永发信息网

C语言这道题循环队列元素个数怎么算

答案:2  悬赏:10  手机版
解决时间 2021-12-16 15:40
设循环队列存储空间为Q(1:50),初始状态为front=rear=50.经过一系列入队和退队操作后,front=rear=25,则该循环队列中元素个数为多少个。 怎么去计算?
最佳答案
应该是:Q->front=(Q->front+1)%QueueSize循环队列的设计思路是:设想向量Q->data[QueueSize]是一个首尾相接的圆环,即Q->data[0]接在Q->data[QueueSize-1]之后,这种意义下的向量称为循环向量,并将循环向量中的队列称为循环队列。针对你这道题,QueueSize为10,所以数组最大下标为9,则array[9]的下一个元素为array[0]来实现循环。举个例子来说吧,出队操作,在循环意义下头指针加1,如果Q->front现在为9(即指向下标为9的元素),则(Q->front+1)%10为(9+1)%10结果为0,所以代表出队后Q->front为0(即指向下标为0的元素),从而实现循环。
全部回答
s表示的是循环队列的成员个数 front是队列的头指针 rear是队列的尾指针 s=0表示循环队列中的成员个数为0,当然也就是队列为空了 s=1表示循环队列中的成员个数为1,front=rear说明队列的头指针和尾指针都指向同一个队列成员,也就是说这个/队列已经封闭了(首尾已经相接),那么这个队列也就满了 >>front=rear=m其中的m也不晓得是什么了 这个m就是具体的成员的地址了,front=rear=m,m就成了当前循环队列中唯一的成员
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
西门子是哪国的品牌
刘德华世界第一等演唱会是哪里话
“骏”是前鼻音还是后鼻音
会议室使用什么筒灯
微信支付没有用户名和密码泄露了安全证书会有
用来渲染诡异气氛的纯音乐。
求求救买了张手机卡刮坏了又不方便去营业厅求
法国留学签证递签之后,那些材料的审核细节是
dota2雷锤蝴蝶提升攻速多
wouldyoumindcontrolingthetime_____onwatchi
怎么让开发人员检查一下https连接在ios11测试
格力中央空调一拖几是什么意思
WIN7怎么默认选择用户?
为什么沸石能防止暴沸?
白色吕布搭配什么黑色长裤好看
推荐资讯
家用灭火毯什么样的好
金轮大厦怎么样
MyfavoritebandEXOisaKoreanBoyBand.There
煮酒论英雄属不属于历史故事?
混凝土搅拌站说开不了混凝土发票,怎么办
日本山口县四季气温
今天是预测经期第二天,肚子疼,感觉要来例假
单选题Wealltried________inbedbuthewoul
隐形床哪个品牌卖的好,瑶梦缘床如何
北京人说话是不是有时候外地人听不懂
HP型号表!
After meeting the beautiful young girl, th
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?