循环队列用数组A[0…m—1]存放其元素值,头尾指针分别为front和rear,front指向队头元素,rear指向队尾元素的下一个元素,其移动按数组下标增大的方向进行(rear!=m—1时),则当前队列中的元素个数是( )。

admin2019-08-10  15

问题 循环队列用数组A[0…m—1]存放其元素值,头尾指针分别为front和rear,front指向队头元素,rear指向队尾元素的下一个元素,其移动按数组下标增大的方向进行(rear!=m—1时),则当前队列中的元素个数是(    )。

选项 A、(rear—front+m)%m
B、(rear—front+1)%m
C、real一front一1
D、rear—front

答案A

解析 考查循环队列的性质。分rear>front和rear<front两种情况讨论:
    ①当rear>front时,队列中元素个数为rear—front=(rear—front+m)%m
    ②当rear<front时,队列中元素个数为m一(front—rear)=(rear—front+m)%m
    综合①、②可知,选项A正确。
转载请注明原文地址:https://kaotiyun.com/show/XuCi777K
0

最新回复(0)