全部问题 > 当前问题

null不是空的意思吗? 解析怎么出来个1个元素啊?

倪爱国 2018-8-11 11:26:39

共 1 个回答

晓晓 2018-8-12 11:55:01

往队列的队尾插入一个元素为入队,从队列的排头删除一个元素称为退队。初始时 front=rear=0 , front 总是指向队头元素的前一位置,入队一次 rear+1 ,退队一次 front+1 。队列队头队尾指针相同时队列为空。              
而带链的队列,由于每个元素都包含一个指针域指向下一个元素,当带链队列为空时 front=rear=Null ,插入第 1 个元素时, rear+1 指向该元素, front+1 也指向该元素,插入第 2 个元素时 rear+1 , front 不变,删除 1 个元素时 front+1 。即 front=rear 不为空时带链的队列中只有一个元素。

某带链的队列初始状态为front=rear=NULL。经过一系列正常的入队与退队操作后,front=rear=10。该队列中的元素个数为( )
A. 1或0
B. 1
C. 0
D. 不确定
答案:B
解析:初始状态为 front=rear=NULL,经过入队与退队操作后,front=rear=10,10-10=0,但是因为初始状态是NULL,所以说明有一个元素