알고리즘/알고리즘 개념
[파이썬]최소힙과 최대힙 구현하는 법
개발자 덕구🐾
2022. 3. 1. 21:45
728x90
최소힙 : 부모 노드의 값이 자식 노드의 값보다 항상 작은 트리
최대힙 : 부모 노드의 값이 자식 노드의 값보다 항상 큰 트리
파이썬에서 구현하는 방법
1 ) 리스트를 생성한다.
2) heapq를 import한다.
import heapq as hq
3) 함수 이용 [ hq. heappop(), hq.heappush()]
a = [] # a라는 리스트
hq.heappop(a) # a에서 pop한다.
hq.heappush(a,n) # a에서 n이라는 숫자를 넣는다.
-> heappop, heappush를 수행할경우 수행 후 heap형태를 가진다.
heapq는 기본적으로 최소힙이다.
최대힙을 이용하고 싶은 경우 - 를 붙여 사용하면된다.
반응형