heapq --- خوارزمية طابور الكومة (heap queue)

تنفّذ هذه الوحدة خوارزمية طابور الكومة الصغرى (min heap).

طابور الكومة هو في جوهره قائمة مُخزّنة عناصرها بطريقة تجعل العنصر الأول في القائمة دائماً هو الأصغر. إدراج القيمة الصغرى وإزالتها عمليتان بتعقيد O(log n)، مما يجعل الأكوام تطبيقاً مريحاً لطابور الأولويات مبنياً على قائمة عادية.

الدوال

heapq.heappush(heap: list, item: Any) None

دفع item على heap.

heapq.heappop(heap: list) Any

إخراج العنصر الأول من heap، وإرجاعه. تثير IndexError إذا كانت heap فارغة.

العنصر المُرجَع سيكون أصغر عنصر في heap.

heapq.heapify(x: list) None

تحويل القائمة x إلى كومة. هذه عملية في الموضع (in-place).