Queue(큐)는 선입선출(FIFO; First In First Out)의 자료구조로 데이터들이 들어온 순서대로 처리되는 구조를 말합니다. 데이터 삽입이 들어오는 back/rear 부분과 데이터가 나가는 front 부분이 있습니다. 스택과 마찬가지로 연결리스트만 완벽히 이해한다면 구현하기 쉽습니다 -> 연결리스트 구현하기 큐 구현 먼저 Node와 Queue를 만듭니다.
Queue를 초기화하는 InitQueue함수
데이터를 추가하는 EnQueue함수, 데이터가 처음 추가되면 front와 back이 처음 추가되는 노드를 가르키고,
데이터를 가져오는 DeQueue함수 front의 노드를 가져오고, front는 front->next노드가 된다.
구현된 DeQueue를 사용하여 노드의 전체를 출력하는 PrintAllNode(), Queue를 메모리 해제하는 DestroyQueue()함수를 만든다.
그리고 다음과 같이 테스트해보면 됩니다.
|