#3898. [GESP202606 六级 C++] 第 5 题

[GESP202606 六级 C++] 第 5 题

假设循环队列数组长度为 N = 7 ,队空判断条件为 front == rear 。入队和出队操作如下:

const int N = 7;
int q[N];
int front = 3, rear = 3;
void enqueue(int x) {
    q[rear] = x;
    rear = (rear + 1) % N;
}
void dequeue() {
    front = (front + 1) % N;
}

依次执行:

enqueue(10);
enqueue(20);
enqueue(30);
dequeue();
enqueue(40);
dequeue();
enqueue(50);

最终 (front, rear) 的值是( )。

{{ select(1) }}

  • (5, 1)
  • (4, 0)
  • (5, 0)
  • (3, 1)