heapq 模块基本操作
1、导入模块:
import heapq # 导入模块
2、heapq 提供的常用方法
heapq.heapify(head) *# 将数组转化成堆*
heapq.heappop(head) # *删除堆顶,也就是最小值*
heapq.heappush(head,item) # *往堆中增元素*
heapq.nlargest(N,head) # *查堆中最大的N个数*
heapq.nsmallest(N,head) # *查堆中最小的N个数*
2.1、将数组转化成堆
head = [3,2,1,4,5]
heapd.heapify(head)
2.2、删除堆顶
heapq.heappop(head) # 1
2.3、在堆中增加元素
heapq.heappush(head,9) # [2,4,3,5,9]
2.4、查堆中最大的N个数
heapq.nlargest(2,head) # [9,5]
2.5、查询堆中最小的N个数
heapq.nsmallest(2,head) # [2,3]