顺序队列--简单操作
2017-10-12 14:02
411 查看
实现顺序队列的入队和出队操作
#include<iostream>
using namespace std;
#define MAX 10
class Cirstack{
public:Cirstack(){front=rear=MAX-1;}
~Cirstack(){}
void EnQueue(int x);
int DeQueue();
int GetQueue();
int Empty(){
if(front==rear)return 1;return 0;
}
private:
int data[MAX];
int front, rear;
};
void Cirstack::EnQueue(int x){ //入队
if((rear+1)%MAX==front) throw "上溢";
rear=(rear+1)%MAX;
data[rear]=x;
}
int Cirstack::DeQueue(){ //出队
if(rear==front) throw "下溢";
front=(front+1)%MAX;
return data[front];
}
int Cirstack::GetQueue(){
int i;
if(rear==front) throw "下溢";
i=(front+1)%MAX;
return data[i];
}
int main(){
Cirstack Que;
int a[20],n,i,x;
cout<<"How many number do you want?"<<endl;
cin>>n;
cout<<"请依次输入入队的值:";
for(i=0;i<n;i++)
{
cin>>x;
Que.EnQueue(x);
}
cout<<"队头为:"<<Que.GetQueue<<endl;
cout<<"出栈顺序为:"<<endl;
for(i=0;i<n;i++)
cout<<Que.DeQueue()<<" ";
cout<<endl;
return 0;
}
实验结果:
#include<iostream>
using namespace std;
#define MAX 10
class Cirstack{
public:Cirstack(){front=rear=MAX-1;}
~Cirstack(){}
void EnQueue(int x);
int DeQueue();
int GetQueue();
int Empty(){
if(front==rear)return 1;return 0;
}
private:
int data[MAX];
int front, rear;
};
void Cirstack::EnQueue(int x){ //入队
if((rear+1)%MAX==front) throw "上溢";
rear=(rear+1)%MAX;
data[rear]=x;
}
int Cirstack::DeQueue(){ //出队
if(rear==front) throw "下溢";
front=(front+1)%MAX;
return data[front];
}
int Cirstack::GetQueue(){
int i;
if(rear==front) throw "下溢";
i=(front+1)%MAX;
return data[i];
}
int main(){
Cirstack Que;
int a[20],n,i,x;
cout<<"How many number do you want?"<<endl;
cin>>n;
cout<<"请依次输入入队的值:";
for(i=0;i<n;i++)
{
cin>>x;
Que.EnQueue(x);
}
cout<<"队头为:"<<Que.GetQueue<<endl;
cout<<"出栈顺序为:"<<endl;
for(i=0;i<n;i++)
cout<<Que.DeQueue()<<" ";
cout<<endl;
return 0;
}
实验结果:
相关文章推荐
- 简单顺序队列操作(不考虑循环)
- 数据结构中队列的简单操作(C语言)
- 顺序队列结构及操作
- 链队列的简单操作(入队,出队,输出队元素等)
- 顺序队列基本操作
- 顺序表的简单操作
- 顺序队列的入队操作
- 顺序队列置空与判断操作
- 顺序队列的简单实现
- 顺序队列基本操作
- 顺序队列(非循环)的基本操作
- 队列的简单操作
- 顺序队列基本操作
- Redis队列——PHP操作简单示例
- 顺序队列的出队操作
- 分布式消息队列RocketMQ&Kafka -- 消息的“顺序消费”-- 一个看似简单的复杂问题
- 实验3:栈和队列的基本操作实现及其应用——顺序队列和链队列
- 数据结构-队列顺序结构的实现和操作
- 顺序栈的简单操作
- 队列-顺序存储-简单实现