C++队列是queue模板类的定义在头文件中,queue模板类需要两个模板参数,一个是元素类型,一个是容器类型,元素类型是必要的,容器类型是可选的,默认为deque类型
C++队列Queue是一种容器适配器,它给予程序员一种先进先出(FIFO)的数据结构
使用queue需添加头文件#include
以及using namespace std;
应用到以上所有函数的代码如下:
#include
#include
using namespace std;
int main()
{
queue<int>a;
int n,m;
cin >> n;
for (int i = 0; i < n;++i)//往队列a里添加n个元素
{
int tmp;
cin >> tmp;//输入数值
a.push(tmp);//从队列末尾压入数值
}
cout << a.front() <<" "<< a.back() << endl;//输出队列a头元素和尾元素
cout << "队列a的元素个数为" << a.size()<<endl;//输出队列a元素个数(大小)
for (int i = 1; i <=n; ++i)//输出队列a的所有头元素并删除头元素
{
cout << a.front() << " ";//输出头元素
a.pop();//删除头元素
}
cout << endl ;//输出完后换行
if (a.empty())//如果队空
{
cout << "队列a为空了"<<endl;
}
//如果要复制代码尝试输出队列B,请一定要注释掉 输出队列a元素for循环语句中的a.pop(),因为如果未注释掉的话,队列b将为空
//以下为复制语句的应用
/*queueb;//创建一个队列b
a.swap(b);//将队列a的所有复制至队列b
for (int i = 1; i <=n; i++)
{
cout << b.front() << " ";//输出头元素
b.pop();//删除头元素
}
if (b.empty())//如果队空
{
cout << endl<<"队列b为空了"<
}
本人萌新小白一枚,以上代码仅供参考,有错地方还请指出,如果有帮到的地方还请各位不要吝啬一个嗷!