Dot Algo∙ DS/자료구조
2022. 1. 5.
[자료구조] 힙(Heap) 구현하기 - 우선순위 큐 (Java)
우선순위 큐 우선순위 큐는 일반 큐와는 달리 우선순위가 가장 높은 자료가 가장 먼저 꺼내지는 자료구조이다. 수행할 작업이 여러 개 있고 시간이 제한되어 있을 때 우선순위가 높은 것부터 수행한다거나 하는 일이 자주있기 때문에 우선순위 큐 자료구조는 자주 쓰인다. 그 사용 예로, 시뮬레이션 시스템. 네트워크 제어, 작업 스케쥴링 등이 있다. 우선순위 큐를 구현하는 방법은 여러가지가 있다. 연결리스트, 배열 균형잡힌 이진 검색 트리 힙 먼저 간단하게 연결 리스트나 배열로 구현하면 해당 자료구조에 원소를 모두 집어넣고, 원소를 꺼낼 때 마다 모든 원소를 순회하며 우선순위가 높은 원소를 찾는 방식을 사용해야 하는데, 이러면 원소 추가 O(1), 검색 O(n)이 걸린다. 균형잡힌 이진 검색 트리로 구현하는 것은 소..