若用一个大小为6的数组来实现循环队列,且当前rear和front的值分别为0和3,当从队列中删除一个元素,在加入两个元素后,rear和front的值分别为多少
答案是:( rear:2,front:4 )。
首先强调概念:
循环队列属于队列,所以符合队列的性质。即:“先进先出”,在队列中“允许插入的一端是队尾,允许删除的一端是队头”。
然后就题分析:
循环队列长度是6个节点;可用于存储数据的是5个节点。
(循环队列中:尾指针(rear)指向队列最后一个节点的下一个空白节点。)
本道题目中组成队列的节点号为:3、4、5。
1、 删除一个元素,头指针(front)后移一位。头指针指向4。
2、加入两个元素,尾指针(rear)后移两位。尾指针指向2。
所以答案是:( rear:2,front:4 )。
PS:
我是初学者,对其他的回答有疑问,所以在查了资料后,我做了我的回答,与大家分享。
有错误还请大家指出。
(2018 12-04 修改排版)