알고리즘/알고리즘 개념

힙(heap)_어떻게 쓰지? python에서는

개발자 덕구🐾 2022. 6. 10. 15:20
728x90

heap


완전 이진 트리의 일종으로 우선순위 큐를 위해 만들어진 자료구조!

 

MAX heap 과 MIN heap이 있다.

 

 

 

 

MAX heap은 부모 노드의 키 값이 자식 노드의 키 값보다 크거나 같은 완전 이진 트리이다. 

 

MIN heap은 부모 노드의 키 값이 자식 노드의 키 값보다 작거나 같은 완전 이진 트리를 의미한다. 

 

 

 

 

 


 

 

 

 

 

파이썬에서 heap을 구현하려면 ?

heapq 모듈을 import 하면 된다. 

 

 

heapq 모듈은 리스트를 최소 힙처럼 사용할 수 있게 도와준다. 

 

import heapq 


heap = []

heapq.heappush(heap,4)
heqpq.heappop(heap)

 

 

 

 

 

heapify를 이용하면 리스트를 힙으로 만들 수 있다. 

 

heapq.heapify(heap)

 

 

 

 

 

 

 

참고 블로그 : 

 

https://www.daleseo.com/python-heapq/

 

[파이썬] heapq 모듈 사용법

Engineering Blog by Dale Seo

www.daleseo.com

 

https://gmlwjd9405.github.io/2018/05/10/data-structure-heap.html

 

[자료구조] 힙(heap)이란 - Heee's Development Blog

Step by step goes a long way.

gmlwjd9405.github.io

 

반응형