가능한 중복 :
how to find number of elements in a Circular Queue원형 큐 크기
나는 원형 큐를 구현하고 있지만 제대로 큐의 크기를 얻을 수 없습니다. 같은 문제에 관한 이전 주제를 찾았습니다. 제안 된 솔루션은 두 개의 포인터를 사용하고 첫 번째 것과 동일한 객체를 가리키는 동안 두 번째 포인터를 증가시키는 것입니다. 하지만 큐에 다른 객체가있을 때만이 appoach가 작동한다고 생각합니다. 내 경우에는 모든 객체가 비슷합니다. 순환 대기열의 크기는 어떻게 알 수 있습니까? 이 공식이 너무 나를 위해 작동하지 않습니다
m_front 및 m_tail 꼬리와 전면 큐 인덱스입니다int size = abs(m_front -m_tail) ;
.
감사
Q : 배열로 구현 된 큐입니까? 링크 된 목록 일 경우 front == tail을 결정하는 것이 가장 좋습니다. 당신은 카운트를 직접 지키지 않는 한 "크기"를 결정할 수 없습니다. – paulsm4
같은 하나 : http://stackoverflow.com/questions/4459141/how-to-find-number-of-elements-in-a-circular-queue –
@ paulsm4 : 예, 배열로 구현됩니다. 앞 == 꼬리이면 배열이 비어 있다는 뜻입니다. – Galileo