Quick Sort Pseudocode

QUICKSORT(ARRAY, left, right)
   IF left < right
      p = PARTITION(ARRAY, left, right)
      QUICKSORT(ARRAY, left, p - 1)
      QUICKSORT(ARRAY, p + 1, right)


PARTITION(ARRAY, left, right)
   pivot = ARRAY[right];
   boundary = left - 1
   FOR j = left to right - 1
      IF(ARRAY[j] <= pivot)
         boundary++
         EXCHANGE(ARRAY[boundary] with ARRAY[j])
   EXCHANGE(ARRAY[boundary + 1] with ARRAY[right])
   return boundary + 1

You may also like