Queue
-
[C] Circular array기반의 Queue 구현Programming/C++ 2021. 1. 19. 21:19
자료구조를 처음 구현할 때, C를 사용하는 사람들은 보통 array를 많이 사용한다. Stack과 Queue에는 원소의 위치를 가리키는 변수 top, front, rear가 존재한다. 이 때, Stack의 마지막 원소의 위치를 가리키는 top은 원소의 증감에 따라 함께 증가하고 감소하기에 문제가 없다. 하지만 Queue의 front와 rear는 연산을 반복하면서 값이 계속해서 증가한다. 따라서 단순한 array로 Queue를 구현하면, 원소의 push와 pop을 반복하면서 앞의 공간은 사용하지 않아 낭비되고 뒤의 공간은 부족할 수 밖에 없다. 따라서 Circular Array를 통해 Queue를 구현하는 방법이 존재한다. Circular Array란, 일반적으로 정의하는 선형의 array가 아니라 '배열..