우선 순위 큐

김하영·2023년 4월 3일
0

비선형자료구조

목록 보기
3/4

우선순위 큐(Priority queue)란?

FIFO가 아니라 우선 순위가 높은 데이터가 먼저 나오는 큐이다.

  • 모든 데이터에 우선순위가 있다.
  • dequeue할때, 우선순위가 높은 순서대로 나간다.
  • 우선순위가 같은 경우에는 FIFO순서대로 나간다.

우선순위 큐 - Enqueue, Dequeue

  • 우선순위 큐를 heap으로 구현한 경우, 최소 힙 및 최대 힙의 삽입/삭제와 같다.

우선순위 큐 구현

  • 우선 순위 큐는 배열, 연결리스트, 힙으로 구현할 수 있다.
  • 자바 내부에 구현되어 있는 우선순위 큐는 힙으로 구현 되어있다.
enqueue()dequeue()
정렬된 배열O(N)O(1)
정렬된 연결리스트O(N)O(1)
O(logN)O(logN)

(정렬되지 않은 경우에는 enqueue와 dequeue의 시간 복잡도가 서로 바뀜)

profile
백엔드 개발자로 일하고 싶어요 제발

0개의 댓글