数据结构顺序循环队列中取模(求余)问题,C语言

设有一个顺序循环队列中有M个存储单元,则该循环队列中最多能才能出(M-1)个队列元素,当前实际存储(R-F+M)%M个队列元素(设头指针F指向当前对头元素的前一个位置,尾... 设有一个顺序循环队列中有M个存储单元,则该循环队列中最多能才能出(M-1)个队列元素,当前实际存储(R-F+M)%M个队列元素(设头指针F指向当前对头元素的前一个位置,尾指针R指向当前队尾元素的位置)
我想问的是,第二个空填R-F不就行了么,(R-F+M)以及对M求余是什么作用
展开
 我来答
风若远去何人留
2016-12-19 · 知道合伙人互联网行家
风若远去何人留
知道合伙人互联网行家
采纳数:20412 获赞数:450106
专业C/C++软件开发

向TA提问 私信TA
展开全部
因为是循环队列
所以 完全有可能出现 队头在队尾后面的情况,即R<F
比如
一共10个元素 M=10
先入队9个元素,队头指向最后一个 即9
然后 出队5个元素,队尾指向5
再入队三个元素, 队头指向2
这是队内实际个数为(2-5+10)%10 = 7个

至于为什么要加上%
是因为 当F=9 R=5的时候 (9-5+10)=14 14%10才是正确结果4
我是你的喷有啊
2016-12-19 · TA获得超过454个赞
知道小有建树答主
回答量:431
采纳率:0%
帮助的人:94.3万
展开全部
你自己画个数组,往里面加数字、取数字,试试就知道了……这种是最直观的数据结构了,怎么理解?就和身边的事物一样,不用理解,你说母语之前会每句话都要考虑后才说吗?简单的数据结构都是模仿现实中的事物的。队列……你排过队吧?循环队列就相当于一个环状的队列,总之,你自己动手画个图、数组,一试就明白,不要画太大了,3-7个格子,你画一百个的话,估计就不用试验了……
追问
,,,答非所问啊看清我要问的好不好
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式