優先キュー


docs
defaultは一番小さいお尻ですv[0]は常に最高値(最高値)を維持しているが、残りの指数が順序を維持する保証はない.
heapqの使用
import heapq
作成
heap = []
# 이미 원소가 들어있는 리스트이면,
v = [4,1,2]
heapq.heapify(v)
要素の追加
heapq.heappush(heap, 4)
heapq.heappush(heap, 1)
# (우선순위, 원소) 의 형식으로 추가도 가능하다. 
heap2 = []
heapq.heappush(heap2, (1, 4))
要素の削除
print(heapq.heappop(heap)) # 가장 작은 원소를 삭제 후에 그 값을 return 한다. 
削除せずに取得
print(heap[0]) - 가장 작은 값/ 큰 값만 얻을 수 있다. 
heappushpopheappushpop(heap,item)hipでitemを開き、heapの最小項目をポップアップして返します.heappushとheapppopを単独で呼び出すよりも効率的です.
nlargestnlargest(n, iterable, key = None)iterableで定義されたデータセットのn個の最大要素からなるリストを返します.
nlargest
iterableで定義されたデータセットのn個の最小要素からなるリストを返します.