为了账号安全,请及时绑定邮箱和手机立即绑定

如下情况,请问rear和front的值分别为多少

如下情况,请问rear和front的值分别为多少

慕勒3428872 2022-06-11 11:07:24
若用一个大小为6的数组来实现循环队列,且当前rear和front的值分别为0和3,当从队列中删除一个元素,再插入两个元素后,rear和front的值分别为多少?
查看完整描述

2 回答

?
慕丝7291255

TA贡献1859条经验 获得超6个赞

大小为6的数组:下标从0-5;从前面出队,从后面入队
front(前面)=3
rear(后面)=0
当出队列中删除一个元素,也就是出队,即front+1:=4
再插入两个元素,即rear+2= 2
【注】
循环队列中,由于入队时尾指针向前追赶头指针;出队时头指针向前追赶尾指针,造成队空和队满时头尾指针均相等。因此,无法通过条件front==rear来判别队列是"空"还是"满"。

查看完整回答
反对 回复 2022-06-14
?
aluckdog

TA贡献1847条经验 获得超7个赞

队列只能在队头删除,队尾插入。删除一个元素,front加一,插入一个元素,rear+1,如果rear此时是5,那么加一后变为0,这就是循环队列的特点。所以,对于本题,最终:front=4;rear=2;

查看完整回答
反对 回复 2022-06-14
  • 2 回答
  • 0 关注
  • 334 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信