已知循环队列存储在一维数组A[0…n-1]中,且队列非空时front和rear分别指向队头元素和队尾元素。若初始时队列为空,且要求第1个进入队列的元素存储在A[0]处,则初始时front和rear的值分别是_______。

admin2015-12-30  12

问题 已知循环队列存储在一维数组A[0…n-1]中,且队列非空时front和rear分别指向队头元素和队尾元素。若初始时队列为空,且要求第1个进入队列的元素存储在A[0]处,则初始时front和rear的值分别是_______。

选项 A、0,0
B、0,n-1
C、n-1,0
D、n-1,n-1

答案B

解析 根据题意,第一个元素进入队列后存储在A[0]处,此时front和rear值都为0。入队时由于要执行(rear+1)%n操作,所以如果入队后指针指向0,则rear初值为n-1,而由于第一个元素在A[0]中,插入操作只改变rear指针,所以front为0不变。
注意:①循环队列是指顺序存储的队列,而不是指逻辑上的循环,如循环单链表表示的队列不能称为循环队列。②front和rear”的初值并不是固定的。
转载请注明原文地址:https://kaotiyun.com/show/n7xi777K
0

最新回复(0)