队列的最大容量为MaxSize
这句话并不是说该队列存满时的元素个数为MaxSize
这一种情况是最大容量为MaxSize
没有申请其他数据成员
判断队列满的条件是Q.front == (Q.rear+1)%MaxSize
解释
通俗的解释,(Q.rear+1)%MaxSize代表在循环队列(rear的值+1)
从图像上看就是当前rear指向的对象的下一位对象
%MaxSize循环的重要属性
可以多试一试几个图,和代数字进去
这一种方法有额外的数据成员size作为队列的伴随变量
这一种方法有额外的数据成员tag作为插入和删除操作的伴随变量
所以由三个图得出符合题意的没有其他数据成员是图一,浪费一块内存
也就是Q.front == (Q.rear+1)%MaxSize