环形队列是一种特殊的队列,它可以在队列满的情况下继续插入新的数据。在环形队列中,当队列的最后一个位置被占用时,下一个数据就会插入到队列的第一个位置。
下面是一个用 C 语言实现的环形队列的例子:
#define MAX_QUEUE_SIZE100
typedef struct {
int data[MAX_QUEUE_SIZE];
int front;
int rear;
} Queue;
void init(Queue *q) {
q->front = 0;
q->rear = 0;
}
int isEmpty(Queue *q) {
return q->front == q->rear;
}
int isFull(Queue *q) {
ret