请问这句话是啥意思?一个简单问题...
if(front==(rear+1)%MAXSIZE这是循环队列入队操作的算法中的一句,是一个判定条件。不太懂百分号的含义,还有请通俗的说一下~谢谢咯if(front==...
if(front==(rear+1)%MAXSIZE
这是循环队列入队操作的算法中的一句,是一个判定条件。不太懂百分号的含义,还有请通俗的说一下~谢谢咯
if(front==(rear+1)%MAXSIZE)少了半个括号。这句话是什么意思呢? 没有错。。 展开
这是循环队列入队操作的算法中的一句,是一个判定条件。不太懂百分号的含义,还有请通俗的说一下~谢谢咯
if(front==(rear+1)%MAXSIZE)少了半个括号。这句话是什么意思呢? 没有错。。 展开
展开全部
因为在循环队列中,当队尾指针加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( 表达式的值 )。这句话的意思是,判断队头和队尾是否相等,
即判断队列是否已满
最大队列长度(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( 表达式的值 )。这句话的意思是,判断队头和队尾是否相等,
即判断队列是否已满
展开全部
这个是求余运算,这个没有少括号啊。。。
你没有搞错吧。。。。
你没有搞错吧。。。。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
%求余数.例如a=9%2那么a=1. 9/2的余数是1
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询