Python标准库模块之heapq

2021/6/21 11:28:04

本文主要是介绍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的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程