피벗이라는 기준점을 이용하여 파티션닝을 합니다.
기준 점(피벗)을 잡아 배열의 첫번 째 값부터 비교하여 피벗보다 작은 값은 왼쪽 큰 값은 오른쪽으로 이동 시킵니다.
QUICKSORT(A,p,r)
if p < r
q = PARTITION(A,p,r)
QUICKSORT(A,p,q-1)
QUICKSORT(A,q+1,r)
파티셔닝에 걸리는 시간
파티셔닝의 횟수
각 하위 문제의 크기가 기존 문제의 크기의 절반 정도인 n/2 과 n/2 -1이 되도록 나우어지는 경우

이미 정렬된 배열일 경우


최악의 경우를 피하기 위해 배열에서 피벗을 무작위로 선택하는 방법입니다.
아직 이해 못했기 때문에 후술..

가장 빠른 알고리즘은 Merge Sort,Heap Sort,Quick Sort가 있지만
각 각의 장 단점을 따져서 사용해야합니다.