[자료구조] 큐 Queue

김정인·2021년 1월 26일
0

자료구조

목록 보기
4/12

큐 Queue

    선형 자료구조의 일종으로 한 방향에서는 입력, 한 방향에서는 출력

  • FIFO(First In First Out): 선입선출. 가장 먼저 입력된 데이터가 가장 먼저 삭제
  • 큐의 가장 첫 원소를 front, 끝 원소를 rear라고 부름. 들어올 때 rear로 들어오지만, 나올 때는 front부터 빠짐. front는 deQueue할 위치, rear는 enQueue할 위치로 -1이 초기값
  • 선형 큐의 경우, rear가 배열의 마지막 인덱스를 가르키면 deque를 통해 발생한 배열의 빈 공간을 이용할 수 없다.

원형 큐 Circular Queue

  • 선형 큐의 단점 보완
  • 논리적으로 배열의 처음과 끝이 연결되어 있는 것으로 간주
  • 초기 공백 상태일 때 front와 rear가 0이며 공백, 포화 상태를 쉽게 구분하기 위해 자리 하나를 항상 비워둠
  • (rear + 1) % size == front일 때가 포화상태

우선순위 큐 Priority Queue


   각 데이터에 우선순위를 부여하여 큐에 넣은 데이터를 꺼낼 때 우선순위가 높은 데이터를 먼저 꺼내는 자료구조

  • 힙(Heap) 자료구조를 통해 구현
    => 데이터 우선수위를 지정하여 Heap에 삽입/Heap 삭제 연산을 수행하고 삭제된 데이터 반환
  • 힙 포스팅 참고

참고링크1
참고링크2

0개의 댓글