heapq — algoritmo de fila de heap

Este módulo implementa o algoritmo de fila de min-heap.

Uma fila de heap é essencialmente uma lista cujos elementos são armazenados de tal forma que o primeiro item da lista é sempre o menor. A inserção e a remoção do valor mínimo são operações O(log n), tornando os heaps uma implementação conveniente de fila de prioridade construída sobre uma lista simples.

Funções

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

Empilha o item no heap.

heapq.heappop(heap: list) Any

Remove o primeiro item do heap e o retorna. Levanta IndexError se heap estiver vazio.

O item retornado será o menor item do heap.

heapq.heapify(x: list) None

Converte a lista x em um heap. Esta é uma operação in-place.