
[C#, Unity] 우선순위 큐(PriorityQueue)
·
Unity,C#/자료구조
■ 개요Queue와 같이 FIFO(먼저 들어온 요소가 먼저 나감)처럼 삽입은 순서대로 하지만, 꺼낼 때는 우선순위가 높은(낮은) 순서로 꺼내지게 된다.중복을 허용하며, 우선순위가 같다면 일반적으로 삽입 순서에 따라 처리되거나, 다른 기준으로 정렬될 수 있다. ■ Heap 우선순위 큐는 힙(Heap)을 사용해 구현하는데, 여기서 말하는 힙은 메모리 구조에서 말하는 힙이 아닌, “자료구조에서의 힙”을 의미한다. Heap 자료구조는 “완전 이진트리”로 구성된다.모든 노드에 저장된 값은 자식 노드에 저장된 값보다 크거나(작거나) 같아야 한다.마지막 레벨은 왼쪽부터 값이 채워진다.위에서부터 내려갈수록 값이 커지면 Min-Heap, 값이 작아지면 Max-Heap이다.Min-Heap이던, Max-Heap이던 Roo..