单选题
设循环队列为Q(1:m),其初始状态为front=rear=m。经过一系列入队与退队运算后,front=20,rear=15。现要在该循环队列中寻找最小值的元素,最坏情况下需要比较的次数为______。
A.5
B.6
C.m-5
D.m-6
A
B
C
D
【正确答案】
D
【答案解析】
[解析] 循环队列是队列的一种顺序存储结构,用队尾指针rear指向队列中的队尾元素,用排头指针指向排头元素的前一个位置,因此,从排头指针front指向的后一个位置直到队尾指针rear指向的位置之间所有的元素均为队列中的元素,该循环队列的容量为m,队列中共有15(尾)-20(头)+m(容量)=m-5个元素,如果想找出其中的最小值,最坏情况下需要一个个的进行比较,即拿其中的1个与其它几个比较,需比较m-5-1=m-6次。故选项D正确。
提交答案
关闭