큐(queue) 란?

큐는 메모리 안 데이터들을 더욱 효율적으로 다루기 위해 만들어진 데이터 참조방식

구조는 '선입선출'의 구조를 가지고 있으며 양쪽 끝에서만 데이터를 넣거나 뺄 수 있는 선형구조입니다. 즉,  제일 처음에 들어온 데이터가 제일 빨리 나가는 방식입니다.

 

 

은행 창구 줄서기 예로 든 설명입니다.
(1) Enqueue : 큐 맨 뒤에 어떠한 요소를 추가, 마지막으로 온 손님에게 번호표 발부
(2) Dequeue : 큐 맨 앞쪽의 요소를 삭제, 창구에서 서비스를 받은 손님의 번호표를 대기목록에서 삭제
(3) Peek : front에 위치한 데이터를 읽음, 다음 서비스를 받을 손님이 누구인지 확인
(4) front: 큐의 맨 앞의 위치(인덱스), 다음 서비스를 받을 손님의 번호
(5) rear: 큐의 맨 뒤의 위치(인덱스), 마지막에 온 손님의 번호

 

 

 

큐(queue) 기능 

출처 : https://ai-rtistic.com/2022/01/22/data-structure-queue/

스택과 비슷하게 큐에서도 몇가지 중요한 기능을 할 수 있습니다.

  • 데이터 삽입 (push(), offer(), add()) : Enqueue
  • 데이터 삭제 (pop(),poll()) : Dequeue
  • 데이터 확인 (peek()) : 가장 처음(front)에 있는 데이터를 확인합니다.

 

 

큐(queue) 예제 

추가 예정

 

 

복사했습니다!