假设有一个大小为N的循环队列,采用顺序存储结构,队头指针为front,队尾指针为rear(指向队尾元素的下一个位置)。当队列为空时,front等于rear。现在,经历一系列入队和出队操作后,队尾指针rear的值为x,且x < front。下列关于当前队列中元素个数的表述,哪一项是完全准确的?
答案解析
A选项错误,当rear < front时,rear需要循环到队列的前面,并不能直接相减。B选项错误,当rear < front时,不能直接相减。C选项正确,当rear < front时,表示队尾已经循环回到了队头前面,所以队列的元素个数应该为(N - front + x) % N。D选项错误,当rear < front时,rear在逻辑上是大于front的,因此不应该直接相减。
正确答案:C