가장 빠른 정렬 알고리즘 중의 하나 퀵 이라는 이름 역시 정렬 속도가 매우 빠르다는 점에서 착안 - 교제 224p

✔️ 퀵 정렬 살펴보기

✔️ 배열을 두 그룹으로 나누기

  1. 피벗이 될 요소를 선택한다.

  2. 피벗보다 작은 요소와 큰 요소로 나눠 그룹으로 묶는다.

  3. 배열의 수가 홀수개인 경우에, 동일한 요소(피벗)을 교환하는 시도가 생긴다.

     → 이 의미 없어보이는 시도가 매번 이뤄져야하는
         양 끝에서 움직이는 인덱스의 위치가 서로 동일한 위치인지에 대한 검사를 없애준다.
    

✔️ 피벗을 기준으로 배열 나누기

✔️ 퀵 정렬

✔️ 스택의 용량

  1. 요소의 개수가 많은 그룹을 먼저 푸시하는 경우
  2. 요소의 개수가 적은 그룹을 먼저 푸시하는 경우

✔️ 피벗 선택하기

✔️ 시간 복잡도

✔️ 연습문제

✔️ 연습문제 정답