Heap sort membangun binary heap dari array, kemudian secara berulang mengekstrak maksimum untuk menghasilkan urutan terurut. Berjalan dalam O(n log n) dan in-place.
Idenya
Max-heap menyimpan elemen terbesar di akar. Bangun heap (O(n)), kemudian tukar akar ke akhir, kurangi heap, dan terapkan ulang sift down — n kali.
