큐(Queue)


큐(Queue)

데이터 구조의 한 종류, 대기행렬이라 불리며 줄 서있는 행렬을 생각하면 이해하기 쉽다.
행렬에서는 새롭게 온 사람이 가장 뒤에 서며 가장 앞에 있는 사람부터 순서대로 처리된다.

queue

큐에 데이터를 추가하면 가장 뒤에 추가된다. 큐에 데이터를 추가하는 작업을 엔큐(enqueue) 라고 한다.
큐에 데이터를 꺼낼 때는 가장 늦게 추가된 데이터부터 꺼낸다. 큐에서 데이터를 꺼내는 작업을 디큐(dequeue) 라고 한다.
먼저 넣는 것을 먼저 꺼내는 구조를 "First In First Out"이라고 하며 앞글자만 따서 "FIFO"라고도 한다.

시간복잡도

OperationAverageWorst
AccessO(n)O(n)
SearchO(n)O(n)
InsertO(1)O(1)
DeleteO(1)O(1)

ref