فرز الكومة يبني كومة ثنائية من المصفوفة، ثم يستخرج بشكل متكرر العنصر الأقصى لإنتاج ترتيب مصنف. يعمل في O(n log n) وهو في المكان.
الفكرة الأساسية
الكومة العظمى تحافظ على العنصر الأكبر في الجذر. بناء الكومة (O(n))، ثم تبديل الجذر إلى النهاية، تقليص الكومة، وإعادة كومة (sift down) — n مرات.
مثال
heapq
():
heapq.heapify(arr)
[heapq.heappop(arr)
_ ((arr))]
heap_sort([, , , , ])
