数据结构循环队列问题

设循环队列为Q(1:m),其初始状态为front=rear=m.经过一系列入队与退队运算后,front=20,rear=15.现要在该循环队列中寻找最小值的元素,最坏情况... 设循环队列为Q(1:m), 其初始状态为front =rear=m.经过一系列入队与退队运算后,front =20,rear=15.现要在该循环队列中寻找最小值的元素,最坏情况下需要比较的次数是多少?? 现在已知答案是m-6,想知道为什么??
这个题主要分不清,队列里头有多少个元素。解析说有m-5个元素,不太理解。按照我的理解,应该是front -rear个元素,也就是5个元素。希望能有大佬详细讲一讲。

另外,如果把题目改一下,front=10,rear=15,这时候队列应该有几个元素呢???
展开
 我来答
屋石
2019-02-20 · TA获得超过5355个赞
知道大有可为答主
回答量:1909
采纳率:86%
帮助的人:917万
展开全部
根据题意,rear表示即将要入的元素所在位置,从front=20,到q[m]共有m-20+1=m-19个元素,从1到rear 到有rear-1个元素即14个元素,则队列中共有m-19+14=m-5个元素
追问
为什么不是算从front(20)到rear(15)之间呢?我以为是吧20减去15,得到5,算作是5个元素。
追答
正常情况是frontrear,说明元素是在front到m,1到rear-1,的区间里,循环队列啊
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式