#include<iostream>
#define maxnum 100
using namespace std;
typedef struct{
int data[maxnum];
int front;
int rear;
}sqQueue;
/*
隊空狀態:qu.rear==qu.front;
隊滿狀態:(qu.rear+1)%maxnum==qu.front;
進隊操作:qu.rear=(qu.rear+1)%maxnum;qu.data[qu.rear]=x;
出隊操作:qu.front=(qu.front+1)%maxnum;x=qu.data[qu.front];
*/
//初始化
void initQueue(sqQueue& qu)
{
qu.front = qu.rear;
}
//判斷隊空
int isQueueEmpty(sqQueue qu)
{
if (qu.front == qu.rear)
{
cout << "隊空" << endl;
return 1;
}
else
{
cout << "隊不空" << endl;
return 0;
}
}
//進隊
int enQueue(sqQueue& qu, int x)
{
if ((qu.rear + 1) % maxnum == qu.front)
{
cout<<"隊滿,無法入隊"<<endl;
return 0;
}
qu.rear = (qu.rear + 1) % maxnum;
qu.data[qu.rear] = x;
return 1;
}
//出隊
int deQueue(sqQueue& qu, int& x)
{
if (qu.rear == qu.front) {
cout << "隊空,無法出隊" << endl;
return 0;
}
qu.front = (qu.front + 1) % maxnum;
x = qu.data[qu.front];
return 1;
}
int main()
{
int x;
sqQueue q;
initQueue(q);
isQueueEmpty(q);
enQueue(q, 1);
enQueue(q, 2);
isQueueEmpty(q);
deQueue(q, x);
cout << x << endl;
deQueue(q, x);
cout << x << endl;
isQueueEmpty(q);
return 0;
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/208806.html
標籤:C++ 語言
下一篇:CentOS7本地源yum配置
