- 使用数组来存储循环队列的元素,并采用两个指针 front 和 rear 分别指向队头和队尾。
- 初始化循环队列时,front 和 rear 均指向数组的第一个位置,队列为空。
- 入队操作:
- 首先判断队列是否满,如果 (rear + 1) % 数组长度 == front,则表示队列已满,无法入队。
- 否则,将元素插入到 rear 所指向的位置,然后将 rear 移动到下一个位置:rear = (rear + 1) % 数组长度。
- 出队操作:
- 首先判断队列是否为空,如果 front == rear,则表示队列为空,无法出队。
- 否则,取出 front 所指向的元素,然后将 front 移动到下一个位置:front = (front + 1) % 数组长度。
- 获取队头元素:
- 直接返回 front 所指向的元素即可。
- 判断队列是否为空:
- 如果 front == rear,则队列为空。
- 判断队列是否为满:
- 如果 (rear + 1) % 数组长度 == front,则队列为满。