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는 기본적으로 최소힙이다.
최대힙을 이용하고 싶은 경우 - 를 붙여 사용하면된다.
반응형
'알고리즘 > 알고리즘 개념' 카테고리의 다른 글
[python]이차원 배열을 뒤집는 방법_zip(*list) (0) | 2022.08.03 |
---|---|
순열을 구해보자. (중복 순열과 그냥 순열) (0) | 2022.07.19 |
[python 구현]DFS에서 꼭 필요한 개념 - 조합 (combination) (0) | 2022.07.11 |
백트래킹과 DFS가 무슨 관계인가요? (0) | 2022.07.01 |
힙(heap)_어떻게 쓰지? python에서는 (0) | 2022.06.10 |