设循环队列的存储空间为Q(1:35),初始状态为front=rear=35,现经过一系列入队与退队
设循环队列的存储空间为Q(1:35),初始状态为front=rear=35,现经过一系列入队与退队运算后,front=15,rear=15,则循环队列中的元素个数为()答...
设循环队列的存储空间为Q(1:35),初始状态为front=rear=35,现经过一系列入队与退队运算后,front=15,rear=15,则循环队列中的元素个数为()
答案是(rear-front+35)%35,这个是什么东西啊,都看不懂,那个%是什么意思啊?
我只知道用rear-front,然后看得到正数要怎么弄?负数又怎么弄?这种类型的题目应该怎么做呀?哪位大侠能说详细些,讲解得好,我能明白的话,我会加分的,谢谢!! 展开
答案是(rear-front+35)%35,这个是什么东西啊,都看不懂,那个%是什么意思啊?
我只知道用rear-front,然后看得到正数要怎么弄?负数又怎么弄?这种类型的题目应该怎么做呀?哪位大侠能说详细些,讲解得好,我能明白的话,我会加分的,谢谢!! 展开
1个回答
展开全部
如果是正数就不用加35了,如果是负数才要加35
这一题明显是个小陷阱,开始时候front=rear ,结束了还是front=rear 说明进来的和出去的一样多啊,你看 如果这是进来一个元素rear就加1,变成rear=1(因为是1:35啊,就是说元素只能排在1-35之间,35排完了就满了吗,没有 35排完了如果再进来元素就该排在1的位置上了。而不是36,这你得明白)
好了 进来一个rear加1 出去一个呢,front加1 就这样进来出去,进来出去,到最后front和rear还是相等的,那不就说明进来和出去的一样多嘛。 这样一来最后的元素就和原来的元素一样多了,明显不是0就是35,因为要么队空(0个元素),要么队满(35个元素)
%是求余数用的 10%3=1,就是这个意思 那个公式就是纯粹数学公式,和编程,语言都没关系。
这种题你画一张图最好理解了,当然短一点最好,弄个队列长度为6的,自己动动手,出对入队的画画就全明白了
这一题明显是个小陷阱,开始时候front=rear ,结束了还是front=rear 说明进来的和出去的一样多啊,你看 如果这是进来一个元素rear就加1,变成rear=1(因为是1:35啊,就是说元素只能排在1-35之间,35排完了就满了吗,没有 35排完了如果再进来元素就该排在1的位置上了。而不是36,这你得明白)
好了 进来一个rear加1 出去一个呢,front加1 就这样进来出去,进来出去,到最后front和rear还是相等的,那不就说明进来和出去的一样多嘛。 这样一来最后的元素就和原来的元素一样多了,明显不是0就是35,因为要么队空(0个元素),要么队满(35个元素)
%是求余数用的 10%3=1,就是这个意思 那个公式就是纯粹数学公式,和编程,语言都没关系。
这种题你画一张图最好理解了,当然短一点最好,弄个队列长度为6的,自己动动手,出对入队的画画就全明白了
来自:求助得到的回答
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
光点科技
2023-08-15 广告
2023-08-15 广告
通常情况下,我们会按照结构模型把系统产生的数据分为三种类型:结构化数据、半结构化数据和非结构化数据。结构化数据,即行数据,是存储在数据库里,可以用二维表结构来逻辑表达实现的数据。最常见的就是数字数据和文本数据,它们可以某种标准格式存在于文件...
点击进入详情页
本回答由光点科技提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询