heapq 堆

import heapq
python里提供的一个库 建立一个小顶堆 做题可能经常会用到 基础写法还是要会的
import heapq

nums = [-1, 34, 4, -114, 514, 1919,810]

#返回前4大的数字
biggest = heapq.nlargest(4, nums)
#返回前3小的数字
top = heapq.nsmallest(3, nums)
print(biggest,top)

#建立一个堆 将已有的元素塞到一个新数组里
pp=[]

for i in nums:
    heapq.heappush(pp,i)
print(pp)
#堆顶滚出去
heapq.heappop(pp)
print(pp)

 实际题目应用:第k大的数→https://www.cnblogs.com/AKsnoopy/p/15397247.html

posted @ 2021-10-12 11:59  土星狗蛋  阅读(42)  评论(0)    收藏  举报