Algortima QuickSort merupakan algoritma untuk mengurutkan data dengan pendekatan rekursif. Proses pengurutan dilakukan dengan memecah kumpulan data menjadi dua bagian berdasarkan nilai pivot yang dipilih.  Pada prinsipnya nilai pivot yang dipilih ini akan ditempatkan pada posisinya disetiap akhir proses partisi.  Setelah proses partisi selesai dan menempatkan pivot pada posisinya yang tepat maka proses pengurutan dilanjutkan secara rekursif untuk mengurutkan data bagian kiri dari pivot dan bagian kanan dari pivot tersebut.

Secara garis besar proses pengurutan QuickSort dapat dijelaskan dengan gambar berikut:

Kinerja algortima QuickSort secara rata-rata adalah O(n log n). Algoritma QuickSort sering lebih cepat dalam praktiknya daripada algoritma MergeSort dan HeapSort. Contoh Progam dalam bahasa C untuk algoritma QuickSort adalah:

Untuk memudahkan pemahaman terhadap program tersebut maka proses pengurutan algoritma QuickSort ini dapat disimulasikan dengan video berikut: Simulasi QuickSort

 

Penulis

Dr. Suharjito, S.Si., MT