heapq — algoritmo della coda con heap

Questo modulo implementa l”algoritmo della coda con min heap.

Una coda con heap è essenzialmente una lista i cui elementi sono memorizzati in modo tale che il primo elemento della lista sia sempre il più piccolo. L’inserimento e la rimozione del valore minimo sono operazioni O(log n), rendendo gli heap una comoda implementazione di coda di priorità costruita su una semplice lista.

Funzioni

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

Inserisce item nell”heap.

heapq.heappop(heap: list) Any

Estrae il primo elemento dall”heap e lo restituisce. Solleva IndexError se heap è vuoto.

L’elemento restituito sarà il più piccolo presente nell”heap.

heapq.heapify(x: list) None

Converte la lista x in un heap. Si tratta di un’operazione in-place.