📌 큐 (Queue)
큐(Queue) 는 먼저 추가한 데이터가 먼저 나오는 선형 자료구조이다.
FIFO (First In - First Out) 순서이므로 처음에 추가된 데이터가 제일 먼저 나가기 때문에 스택과는 반대 개념이다.

큐에 끝(Rear)에서 요소를 추가하는 작업을 enqueue라고 하며 큐에 맨 앞(Front)에서 요소를 제거하는 작업을 dequeue라고 한다.
- enqueue() : 큐에 끝(rear)에 항목을 추가
- dequeue() : 큐에 맨 앞(front)에 항목을 제거
- peek() : 큐에 맨 앞(front)에 있는 항목을 반환
- isfull() : 큐가 가득 찼는지 확인
- isempty() : 큐가 비어 있는지 확인
큐(Queue) 구현 방법
- 배열(Array)
- 장점 : 구현이 쉽다.
- 단점 : 크기가 동적이 아니기 때문에 필요에 따라 확장/축소되지 않는다.
- 연결 리스트(Linked List)
- 장점 : 필요에 따라 크기가 확장/축소가 가능하다.
- 단점 : 포인터를 위한 추가 메모리 공간이 필요하다.