array 로 queue 를 만드려고 하는데
예를 들어 다른 int로 어레이 좌표를 찍어서 ㄹ=시작 ㄱ=끝 이렇게 만들면
[1] [2] [3] [4] [5] [6] [7]
ㄺ ㄱ ㄱ ㄱ ㄱ ㄱ ㄱ
큐에서 첫번째를 뽑을때 이렇게 되지요
[1] [2] [3] [4] [5] [6] [7]
ㄱ ㄺ ㄱ ㄱ ㄱ ㄱ ㄱ
만약 큐를 1회용으로 쓰고 안쓸거면 이런 방법으로도 괜찮지만
만약 어레이의 크기가 7로 지정되어있는 경우
큐를 계속 뽑아서
[1] [2] [3] [4] [5] [6] [7]
ㄱ ㄱ ㄱ ㄱ ㄱ ㄱ ㄺ
끝까지 가면 더이상 큐에 새로운 엔트리를 넣을수가 없게 되잖아요
그렇다고 해서 어레이 크기를 너무 크게 잡으면 메모리를 많이 먹으니 해결은 안되구요
한 어레이를 재활용해서 큐로 쓸수가 있을까요?
[1] [2] [3] [4] [5] [6] [7]
ㄺ ㄱ ㄱ ㄱ ㄱ ㄱ ㄱ
뽑기1
[2] [3] [4] [5] [6] [7] [ ]
ㄺ ㄱ ㄱ ㄱ ㄱ ㄱ
뽑기2
[3] [4] [5] [6] [7] [ ] [ ]
ㄺ ㄱ ㄱ ㄱ ㄱ
넝기1
[3] [4] [5] [6] [7] [ 1 ] [ ]
ㄺ ㄱ ㄱ ㄱ ㄱ ㄱ
이런식으로요
아니면 C에서 다른 방법으로 큐를 더 쉽게 구현할수 있는 방법은 있을까요?
감사합니다