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개를 사용