数据结构 循环队列选择题
数据结构循环队列选择题1.循环队列初始不是front=rear么?2.(rear+1)%maxsize==front不是等于满了吗?怎么是初始?...
数据结构 循环队列选择题1.循环队列初始不是front=rear么?
2.(rear+1)%maxsize==front 不是等于满了吗?怎么是初始? 展开
2.(rear+1)%maxsize==front 不是等于满了吗?怎么是初始? 展开
1个回答
展开全部
个人认为这题目出的不太好,循环队列具体实现前后指针的处理有多种方式。
如果非要选一个答案,个人倾向于选 B。
如果 rear 指向的是队列中的最后一个元素,那需要用另一个变量表示队列是否空,我猜测题目中隐含了这个意思。
答案 A,入队操作,如果队列空,则直接把元素存在 rear 位置,否则先 rear++,再把元素存在 rear 位置。
答案 B,入队操作,先 rear++,再把元素存在 rear 位置。与答案 A 相比少了 if 判断,更简洁。
答案 C,入队操作,先 front++,再把元素存在 rear 位置,入队进行 front++ 操作违反常规。
答案 D,入队操作,先 front++,rear++,再把元素存在 rear 位置,入队进行 front++ 操作违反常规,且两个++操作不如答案 B 简洁。
如果非要选一个答案,个人倾向于选 B。
如果 rear 指向的是队列中的最后一个元素,那需要用另一个变量表示队列是否空,我猜测题目中隐含了这个意思。
答案 A,入队操作,如果队列空,则直接把元素存在 rear 位置,否则先 rear++,再把元素存在 rear 位置。
答案 B,入队操作,先 rear++,再把元素存在 rear 位置。与答案 A 相比少了 if 判断,更简洁。
答案 C,入队操作,先 front++,再把元素存在 rear 位置,入队进行 front++ 操作违反常规。
答案 D,入队操作,先 front++,rear++,再把元素存在 rear 位置,入队进行 front++ 操作违反常规,且两个++操作不如答案 B 简洁。
追问
谢谢
迈杰
2024-11-30 广告
2024-11-30 广告
迈杰转化医学研究(苏州)有限公司于2013年成立,其前身为凯杰(苏州)转化医学研究有限公司。基于基因组学、蛋白组学、细胞组学及病理组学等综合性转化医学平台,丰富的伴随诊断开发经验,高质量的管理体系以及高素质的研发管理团队,迈杰转化医学为全球...
点击进入详情页
本回答由迈杰提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询