请问这句话是啥意思?一个简单问题...

if(front==(rear+1)%MAXSIZE这是循环队列入队操作的算法中的一句,是一个判定条件。不太懂百分号的含义,还有请通俗的说一下~谢谢咯if(front==... if(front==(rear+1)%MAXSIZE
这是循环队列入队操作的算法中的一句,是一个判定条件。不太懂百分号的含义,还有请通俗的说一下~谢谢咯
if(front==(rear+1)%MAXSIZE)少了半个括号。这句话是什么意思呢? 没有错。。
展开
 我来答
oskk
2010-08-24 · 超过21用户采纳过TA的回答
知道答主
回答量:50
采纳率:0%
帮助的人:41.7万
展开全部
因为在循环队列中,当队尾指针加1(即rear+1)可能会超过
最大队列长度(MAXSIZE),通过求余运算就可以使rear+1在0--MAXSIZE
范围内。比如循环队列的地址为0 1 2 3 4 5 ,front为0,rear为5,当rear
加上1后为6超过了0---5的围,因为是循环队列,本来应该是从0到5,而5过
后接着是0,通过(rear+1)%MAXSIZE,即(5+1)%6=0,就可以实现。
if(front==(rear+1)%MAXSIZE)未少括号,(rear+1)是一个整体,而%
的优先级高于==,所以(rear+1)先与MAXSIZE结合,即先算(rear+1)%MAXSIZE,
然后是front == (rear+1)%MAXSIZE,由此式得到的值为0或1,然后再执行
if( 表达式的值 )。这句话的意思是,判断队头和队尾是否相等,
即判断队列是否已满
yuanwei901113
2010-08-22 · TA获得超过142个赞
知道答主
回答量:102
采纳率:0%
帮助的人:0
展开全部
这个是求余运算,这个没有少括号啊。。。
你没有搞错吧。。。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
尘缘郑俊杰
2010-08-21 · 超过30用户采纳过TA的回答
知道答主
回答量:140
采纳率:0%
帮助的人:117万
展开全部
%求余数.例如a=9%2那么a=1. 9/2的余数是1
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
whtext
2010-08-21
知道答主
回答量:2
采纳率:0%
帮助的人:0
展开全部
“%”号是求余的意思。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式