关于数据结构队列空满判断问题将队列存储在下标范围0到(maxqueue-1)的数组中,队列满时数组留有一个空位,试写出Q

1个回答

  • 用到取模运算,可知这是循环队列,题目没有说明是循环队列,不够严谨.

    (1)队列空的条件是rear==front,出队列时front = (front+1)%maxqueue,如果此时队列中只有一个元素,则front指向的就与rear的相等,下次出队列时要先判定是否为空,就是根据条件rear==front

    (2)队列满时条件判定为(rear+1)%maxqueue == front,因为每次入队列后,rear都会向前移动一格,即rear指向的空位其值是不放数据的.