본문/내용
1. 큐의 정의와 특징
큐(Queue)는 데이터를 일렬로 나열하여 먼저 들어온 데이터가 먼저 나가는 선입선출(FIFO, First-In-First-Out) 방식으로 처리하는 자료구조이다. 이러한 구조는 여러 가지 자연적 또는 인공적인 상황에서 유용하게 사용된다. 예를 들어, 은행의 대기줄, 프린터의 작업 처리 순서, 운영체제의 프로세스 스케줄링 등에서 큐 구조가 활용된다. 큐의 가장 큰 특징은 데이터를 넣는 연산을 enqueue, 데이터를 꺼내는 연산을 dequeue라고 하며, 이 과정에서 데이터의 순서가 유지된다는 점이다. 이를 통해 데이터의 순서가 중요한 프로세스를 효율적으로 관리할 수 있다. 큐는 일반적으로 배열이나 연결 리스트 기반으로 구현되며, 배열을 사용할 경우 최대 크기를 지정해야 하고, 연결 리스트를 이용하면 크기의 제한 없이 유연하게 확장할 수 있다. 큐의 또 다른 특징은 두 가지 포인터인 front와 rear를 두어 앞쪽과 뒤쪽을 가리킴으로써 효율적인 자료의 입력과 삭제가 가능하다는 것이다. 일반적인 큐에서는 큐가 비어있을 경우 dequeue 연산은 수행되지 않으며, 포인터의 이동으로 데이터의 순서와 위치를 조절한다. 큐의 성질 때문에 FIFO 방식을 준…