queue为单向队列与栈有点类似,一个是在同一端存取数据,另一个是在一端存入数据,另一端取出数据。单向队列中的数据是先进先出(First In First Out,FIFO)。在STL中,单向队列也是以别的容器作为底部结构,再将接口改变,使之符合单向队列的特性就可以了。因此实现也是非常方便的。下面就给出单向队列的函数列表和VS2008中单向队列的源代码。
单向队列的6个常用函数
push(x) 将x压入队列的末端
pop() 弹出队列的第一个元素(队顶元素),注意此函数并不返回任何值
front() 返回第一个元素(队顶元素)
back() 返回最后被压入的元素(队尾元素)
empty() 当队列为空时,返回true
size() 返回队列的长度
使用例子
#include<iostream>
#include<queue>
using namespace std;
int mian()
{
queue<int>q; //定义队列
q.push(5); //入队
q.push(6);
cout<<q.back()<<endl; //返回队列最后一个元素
cout<<q.front()<<endl; //返回队列第一个元素
q.pop(); //删除队列第一个元素
cout<<q.empty()<<endl; //判断队列是否为空
cout<<q.size()<<endl; //返回队列大小
return 0;
}