队列一般有一定大小,会声明有限的内存空间。
对队列进行pop后,队列最前端的下标就会改变(如果pop时不改下标,计算机的计算量将加大)。
判断队列是否已满,肯定是通过队列的头head,尾rear,与队列上限MAX_SIZE确定。
若令队列为空判断条件为,head==rear,同时声明的内存空间=MAX_SIZE,
会发现 判断队列已满的条件也是head==rear ,
因此需要引入bool变量 判断。
若另队列为空判断条件为,,head==rear,同时声明的内存空间=MAX_SIZE+1,
会发现 判断队列已满的条件变成了head-1==rear ,
不需要引入bool变量 判断。
声明的内存空间都可能用上,但队列最多只会同时用MAX_SIZE。