问题
单项选择题
设循环队列的存储空间为Q(1:35),初始状态为front=rear=35。现经过一系列入队与退队运算后,front=15,rear=15,则循环队列中的元素个数为()。
A.16
B.20
C.0或35
D.15
答案
参考答案:C
解析:
在循环队列中,用队尾指针rear指向队列中的队尾元素,用队头指针front指向队头元素的前一个位置。因此,从队头指针front指向的后一个位置到队尾指针rear指向的位置之间所有的元素均为队列中的元素。循环队列的初始状态为空,即rear=front=m,每进行一次入队运算,队尾指针就进一。每进行一次出运运算,队头指针就进一。此题中rear=front=15,可能出现的情况是入队的元素全部出队,此时队列中元素个数为O;也可能是执行入队出队的次数不一样,最终状态是队列为满的状态,此时队列中元素个数为35。故答案为C)。