뭐라도 끄적이는 BLOG

05. 큐(Queue) 본문

기본이론/Datastructure

05. 큐(Queue)

Drawhale 2023. 6. 17. 08:54

자료구조에서 사용되는 큐(Queue)는 줄 서기의 특징을 가지고 있다. 즉, 큐는 추가되는 자료를 차례대로 저장하여, 저장된 순서에 의해 데이터가 나오는 자료구조이다. 먼저 저장된 데이터가 나중에 저장된 데이터 보다 항상 앞서 나오기 때문에 큐는 FIFO(First-In-First-Out)이라는 특성을 가진다. 이를 '피포'라고 읽으며 다른 말로 선입선출(先入先出)이라고도 한다.

이런 FIFO의 특성은 현실세계에도 찾아볼 수 있다. 대표적으로 은행에서 발행하는 대기표를 예로 들 수 있다. Queue에서 가장 앞에 있는 고객은 가장 먼저 도착한 고객이며, 가장 뒤에 있는 고객은 가장 나중에 도착한 고객이된다. 순서가 가장 빠른 고객이 먼저 Queue를 먼저 빠져나와 업무를 처리할 수 있다.

Queue에서의 자료반환은 큐의 제일 앞(front)에서만 가능하고 자료 추가는 큐의 제일 끝(rear)에서만 가능하다. Queue에서 선입선출의 특성을 갖는것은 이러한 같은 제약 사항 때문에 가능하다.

Enqueue

 

Queue에서 자료를 저장하기 위해 새로운 자료를 큐에 추가하는 것을 Enqueue라고 한다.

Enqueue

Dequeue

Queue에서 자료를 꺼내는 것을 Dequeue라고 한다.

Dequeue

Peek

Queue에서 Peek연산은 앞으로 Dequeue될 자료를 확인하는 연산이다.

peek

반응형

'기본이론 > Datastructure' 카테고리의 다른 글

07. 그래프(Graph)  (0) 2023.06.17
06. 트리(Tree)  (0) 2023.06.17
04. 스택(Stack)  (0) 2023.06.17
03. 리스트(List)  (0) 2023.06.17
02. 배열 (Array)  (0) 2023.06.17