#include<iostream>
using namespace std;
const int N=1e5+10;
int m;
int q[N],hh,tt=-1; //q[N]为对列, tt表对尾,初始为-1,hh为对头
//主要记住,判断是否为空是hh<=tt
int main()
{
cin>>m;
while(m--)
{
string op;
int x;
cin>>op;
if(op=="push")
{
cin>>x;
q[++tt]=x; //队列的push操作
}
else if(op=="pop")//队列的pop操作
{
hh++;
}
else if(op=="empty")//队列的empty()操作
{
cout<<(hh<=tt?"NO":"YES")<<endl;
}
else
{
cout<<q[hh]<<endl; //队列的取出对头元素操作
//cout <<q[tt]<<endl ; //队列的取出对尾操作
}
}
return 0;
}
数组模拟队列
最新推荐文章于 2022-11-10 18:01:54 发布
本文介绍如何使用C++实现一个简单的队列数据结构,包括push元素入队、pop元素出队、empty检查队列是否为空以及获取队头元素的操作。通过实例展示了如何维护队列的头指针和尾指针,并提供相应的输入输出流程。
摘要由CSDN通过智能技术生成