Python标准库模块之heapq
Posted lq430430
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python标准库模块之heapq相关的知识,希望对你有一定的参考价值。
- 创建堆
heapq有两种方式创建堆, 一种是使用一个空列表,然后使用heapq.heappush()函数把值加入堆中,另外一种就是使用heap.heapify(list)转换列表成为堆结构
#创建堆方法1
import heapq
list=[12,1,53,33,123,2,52,98]
heap=[]
#将List中各元素依次放入堆中
for item in list:
heapq.heappush(heap,item)
#print(heap[0]) #打印出堆中最小值
print([heapq.heappop(heap) for _ in range(len(list))]) #堆排序结果
#创建堆方法2
list=[12,1,53,33,123,2,52,98]
heapq.heapify(list)
for _ in range(len(list)):
print(heapq.heappop(heap)) #每次弹出堆中最小值
以上是关于Python标准库模块之heapq的主要内容,如果未能解决你的问题,请参考以下文章