A.sq->rear-sq->front==m
B.sq->rear-sq->front-1==m
C.sq->front==sq->rear
D.sq->front==sq->rear+1
设循环队列的存储空间为Q(1:m),初始状态为空。现经过一系列正常的入队与退队操作后,front=m,rear=m-1,此后从该循环队列中删除一个元素,则队列中的元素个数为()。
A.m-2
B.1
C.m-1
D.0
A、q.rear-q.front
B、q.rear-q.front+1
C、(q.rear-q.front)%maxSize+1
D、(q.rear-q.front+maxSize)%maxSize
最大容量为n的循环队列,队尾指针是rear,队头指针是front,则队满的条件是()。
A.(rear+1)modn=front
B.rear=front
C.rear+1=front
D.(rear一1)mod n=front
A.rear%n==front
B.front+l=rear
C.rear==front
D.(rear+l)%n=front
ElemType OutQueue(struct SeqQueue *sq)
{ if (sq->rear==sq->front)
{ printf(“队列已空,不能进行出队操作!\n”);
exit(1);
}
return sq->data[sq->front-1];
}
A.sg->front--;
B.sq->front++;
C.sq->rear++;
D.sq->rear--;