Böl ve yönet stratejisi. Pivot elemanı seçip diziyi ikiye böler.
Böl ve yönet (divide and conquer) stratejisini kullanan verimli bir sıralama algoritmasıdır. Bir pivot eleman seçilir ve diğer elemanlar pivottan küçük veya büyük olmalarına göre bölünür.
quicksort(arr, low, high):
if low < high:
pi = partition(arr, low, high)
quicksort(arr, low, pi - 1)
quicksort(arr, pi + 1, high)
partition(arr, low, high):
pivot = arr[high]
i = low - 1
for j = low to high - 1:
if arr[j] < pivot:
i++
swap(arr[i], arr[j])
swap(arr[i+1], arr[high])
return i + 1