某循环队列的容量为M,队头指针指向队头元素,队尾指针指向队尾元素之后,如下图所示(M=8),则队列中的元素数目为(41)(MOD表示整除取余运算)。

admin2009-05-15  37

问题 某循环队列的容量为M,队头指针指向队头元素,队尾指针指向队尾元素之后,如下图所示(M=8),则队列中的元素数目为(41)(MOD表示整除取余运算)。

选项 A、rear-front
B、front-rear
C、(rear-front+M)MODM
D、(front-rear+M)MOD M

答案C

解析 本题考查数据结构中队列的础知识。队列是仅在表头删除元素、在表尾插入元素的操作受限的线性表,其特点是先入先出。应用中可以将队列看作容器。队列采用顺序存储结构(一维数组,顺序队列)时,为了降低运算的复杂度,元素入队时,只需修改队尾指针rear,(rear+1→rear);元素出队时,只需修改队头指针front(front+1→front)。由于顺序队列的存储空间是提前设定的,所以队尾指针会有一个上限值,当队尾指针达到其上限时,就不能只通过修改队尾指针来实现新元素的入队操作了。此时,可将顺序队列假想成一个环状结构,称为循环队列。队列容量为M时,队头指针front和队尾指针rear的值循环地在0~M-1之间变化,当rear>front时,队列中元素数目为rear-front;当rear<front时,队列中元素数目为rear-front +M。综上,队列中元素数目为(rear-front+M)MOD M。
转载请注明原文地址:https://kaotiyun.com/show/MyjZ777K
0

相关试题推荐
最新回复(0)