오늘 뭐했냐/개발에 대한 주저리

23.09.16 우선순위 큐(Priority Queue)

스스로에게 2023. 9. 18. 21:33

우선순위 큐

들어간 순서에 상관없이 우선순위가 높은 데이터가 먼저 나오는 것을 말한다.

 

특징 

  1. 모든 항목에는 우선순위가 있다.
  2. 우선순위가 높은 요소는 우선순위가 낮은 요소보다 먼저 queue에서 제외된다.
  3. 두 요소의 우선순위가 같으면 queue의 순서에 따라 제공된다.

 

우선순위 큐와 일반적인 큐 비교

4 → 8 → 2 순으로 데이터가 들어간다고 했을 때 큐와 우선순위 큐의 처리 순서는 다음과 같다.

(여기서 높은 값이 높은 우선순위)

input : 4 → 8 → 2

: 4 → 8 → 2

우선순위 큐 : 8 → 4 → 2

 

우선순위 큐의 주요 기능 

  • enqueue()- queue에 새 요소를 삽입합니다.
  • dequeue() - queue에서 최대 우선순위 요소를 삭제하고 그 값을 반환합니다.
  • peek() - queue에서 최대 우선순위 요소를 반환합니다.

 

참고