heapq --- 堆積佇列演算法

本模組實作 最小堆積佇列演算法

堆積佇列本質上是一個串列,其元素的儲存方式使得串列的第一個項目永遠是最小值。插入與移除最小值皆為 O(log n) 操作,使堆積成為建立於一般串列之上、方便的優先佇列實作。

函式

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

item 推入 heap

heapq.heappop(heap: list) Any

heap 取出第一個項目並回傳。若 heap 為空則拋出 IndexError

回傳的項目會是 heap 中最小的項目。

heapq.heapify(x: list) None

將串列 x 轉換為堆積。這是一個原地(in-place)操作。