

| 이유 | 설명 |
|---|---|
| 완전 이진 트리 | 위→아래, 왼→오 순서로 꽉 채워야 함 |
| 부모 > 자식 조건만 존재 | 10이 루트라면 3, 5, 1은 어디 있든 상관 없음 (단, 부모보다 작기만 하면 됨) |
| 정렬 X | 정렬은 목표가 아님. 가장 큰 값을 빠르게 꺼내기 위한 구조가 목적 |
삽입: 5 → 3 → 10 → 1
10
/ \
3 5
/
1heapq 모듈은 배열(리스트)을 이용하여 완전 이진트리를 구현 heappush(heap, data): 힙에 새로운 데이터를 삽입heappop(heap): 힙에서 루트 노드(최소값)를 꺼낸 후 삭제heapify(x): 주어진 배열을 힙 구조로 변환O(log n)