在一个循环队列中,队列的容量为QueueSize,当前队列的状态为rear=3,front=3,QueueSize=5。此时,以下哪个操作会导致队列状态变为队满?
答案解析
当前rear=3,front=3,QueueSize=5,根据队满的条件(rear+1)mod QueueSize=front,计算得(3+1)mod 5=4≠3,所以当前队列未满。执行一次入队操作后,rear=4,front=3,(4+1)mod 5=0≠3,仍未满。执行一次出队操作后,rear=3,front=4,(3+1)mod 5=4=front,此时队列满。执行两次入队操作后,rear=0,front=3,(0+1)mod 5=1≠3,仍未满。执行两次出队操作后,rear=3,front=0,(3+1)mod 5=4≠0,仍未满。因此,只有执行一次出队操作会导致队列状态变为队满。
正确答案:B