ㅡㅡㅡㅡ
우선순위큐의 저장 순서는
위에서 아래로, 좌에서 우 순서이지 않음?
우선순위 큐에서 값을 저장할때
1. 큐의 맨 마지막에 저장한다.
2. 부모노드와 비교하여 작다면 바꾼다
(min heap의 경우)
3. 부모노드보다 클때까지 2번 반복
이런 과정을 거치더라고
근데 내가 이해가 안가는게 같은 깊이의 노드들
(위 사진의 경우엔 [2,3], [17,19,36,7])
사이에는 크기를 비교하지 않음?
그러면 큐에서 값을 얻는 순서가 갚은 깊이의 노드들에 대해선 우선순위가 무시되는거 아님?
Min heap은 제일 작은노드가 위에, 그리고 부모가 자식보다 작다. 이것만 보장하는거지 다른노드의 순서를 보장하지않는다. 그냥 min값을 가장먼저 뽑는 용도로 쓰는거야. 그걸로 우선순위가 가장높은 노드를 가져오는거고
좌에서 우라는 규칙은 없음. 그냥 PQ 구현체 대부분이 배열이라 그런거지
그래서 빠른거임 bbst보다