#include<stdio.h>
#include<stdlib.h>
#define Maxsize 10
struct Squeue
{
int data[Maxsize];
int front, rear;
};
void InitQueue(Squeue& Q) {
Q.rear = Q.front;//初始化
}
bool QueueEmpty(Squeue& Q) {
if (Q.front == Q.rear) { //判空操作
return true;
}
else {
return false;
}
}
//循环队列入队
bool EnQueue(Squeue& Q,int x) {
if ((Q.rear + 1) % Maxsize == Q.front) {
return false;//队满
}
Q.data[Q.rear] = x;
Q.rear=Q.rear + 1;//队尾指针前移
return true;
}
//循环队列出队
bool DeQueue(Squeue& Q, int& x) {
if (Q.rear = Q.front) {
return false; //队空
}
x = Q.data[Q.front];
Q.front = (Q.front + 1) % Maxsize; //队头指针前移
return true;
}
//循环队获得队头元素
bool DeQueue(Squeue& Q, int& x) {
if (Q.rear = Q.front) {
return false; //队空
}
x = Q.data[Q.front];
return true;
}
队列基本操作
最新推荐文章于 2024-09-17 16:12:30 发布