队列是一种线性存储结构。
特点:先进先出,队尾插
入队:push,插入队尾
出队:pop,删除队首
判断队空:队首=队尾
c++直接调用queue库
基本操作:
q.empty() 如果队列为空返回true,否则返回false
q.size() 返回队列中元素的个数
q.pop() 删除队列首元素但不返回其值
q.front() 返回队首元素的值,但不删除该元素
q.push() 在队尾压入新元素
q.back() 返回队列尾元素的值,但不删除该元素
#include<queue> //c++调用queue库函数
程序:
//队列基本操作
//q.empty() 如果队列为空返回true,否则返回false
//q.size() 返回队列中元素的个数
//q.pop() 删除队列首元素但不返回其值
//q.front() 返回队首元素的值,但不删除该元素
//q.push() 在队尾压入新元素
//q.back() 返回队列尾元素的值,但不删除该元素
#include<iostream>
#include<queue> //调用queue库函数
using namespace std;
int main()
{
queue<int> q; //创建一个int类型的队列q
for(int i=0;i<10;i++)
{
q.push(i); //入队
}
if(!q.empty()) //判断队列是否空
{
cout<<"数列非空"<<endl;
cout<<"数列q有"<<q.size()<<"个元素"<<endl;
}
cout<<"队首元素为:"<<q.front()<<endl;
cout<<"队尾元素为:"<<q.back()<<endl;
for(int i=0;i<10;i++)
{
cout<<q.front()<<" ";
q.pop(); //删除首元素
}
return 0;
}
运行结果: