unhyepnhj 2024. 7. 14. 16:27

큐(queue)

- 선입선출(FIFO, First-In First-Out) 구조

- 뒤에서 새로운 데이터가 추가되고 앞에서 데이터가 하나씩 삭제되는 구조

- 스택과 달리 큐에서는 삽입과 삭제가 다른 쪽에서 일어남

- 삽입이 일어나는 곳은 후단(rear), 삭제가 일어나는 곳은 전단(front)

- 추상 자료형 큐의 연산들은 추상 자료형 스택과 매우 유사

- is_empty 연산은 큐가 비어 있을 때 TRUE를, 그렇지 않으면 FALSE를 반환

- is_full 연산은 큐가 가득 찼으면 TRUE를, 그렇지 않으면 FALSE를 반환

- enqueue 연산은 큐의 맨 뒤에 새로운 요소를 추가

- dequeue 연산은 큐의 맨 앞에 있는 요소를 꺼내서 외부로 반환

- 스택과 달리 삽입, 삭제가 큐의 양 끝에서 일어남

- 스택에서 삽입, 삭제와 관련하여 top 변수 1개를 사용

- 큐에서는 삽입과 관련된 rear 변수, 삭제와 관련된 front 변수 2개를 사용