heapq — Heap-Queue-Algorithmus#

Dieses Modul implementiert den Min-Heap-Queue-Algorithmus.

Eine Heap-Queue ist im Wesentlichen eine Liste, deren Elemente so gespeichert sind, dass das erste Element der Liste stets das kleinste ist. Das Einfügen und Entfernen des Minimalwerts sind O(log n)-Operationen, was Heaps zu einer praktischen, auf einer einfachen Liste aufgebauten Prioritätswarteschlangen-Implementierung macht.

Funktionen#

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

Legt das item auf den heap.

heapq.heappop(heap: list) Any#

Entnimmt das erste Element aus dem heap und gibt es zurück. Löst IndexError aus, wenn heap leer ist.

Das zurückgegebene Element ist das kleinste Element im heap.

heapq.heapify(x: list) None#

Wandelt die Liste x in einen Heap um. Dies ist eine In-Place-Operation.