Quick Sort는 정렬하기 위한 배열에서 pivot 요소를 택한 다음 pivot 요소 왼쪽에는 우선순위가 높은 요소, 오른쪽에는 우선순위가 요소로 정렬하는 알고리즘이다. 알고리즘 성능이 O(logN)으로 아주 효과적이다. 구현할 순서는 다음과 같다.
- 피벗 요소를 선택하고 피벗 앞 요소와 배열의 맨 끝 요소를 가리키는 포인터를 정의한다.
- 두 포인터가 만날때까지 정렬한다.
- 피벗 요소와 우선순위가 가장 높은 요소의 자리를 바꾼다.
이를 재귀적으로 구현한다.
1. 피벗 요소를 선택하고 배열을 양쪽을 가리키는 포인터를 정의한다.
2. 두 포인터가 만날 때까지 정렬한다.
3. 피벗 요소와 우선순위가 가장 높은 요소의 자리를 바꾼다.