1. 再谈队列
回顾一下之前所学的队列,队列和栈不同,队列是一种先进先出的数据结构,STL的队列内容极其重要,虽然内容较少但是请务必掌握,STL的队列是快速构建搜索算法以及相关的数论图论的状态存储的基础。
2.相关文件
头文件:#include
3.初始化
格式为:
explicit queue ( const container_type& ctnr = container_type()); |
我们以int类型作为参数为例进行创建。
queue q; //创建一个空的没有数据的队列q queue qoo(q); //创建一个队列其元素为q的全部内容 |
标准的队列创建方法是直接创建空队列再进行其他的操作,由于队列的特殊性质,拥有其他容器的参数可以这样创建,这种多参数的方式可能有一些复杂,一般也很少这样使用。
vector v(3,100); queue s(v); //注意,> >符号之间需要有一个空格隔开 |
通过标准的方式创建向量数组,然后通过复制构造函数的方式进行创建,其内容就是vector数组的全部内容。
4. 迭代器
栈和队列都属于一种特殊的数据结构,只能通过访问顶层数据并不断剔除数据的方法进行全部访问,因此没有直接的迭代器。
5. 常用接口
我们预先通过queue q创建了一个队列,命名为q,方便举例。
a)大小size()
返回队列元素的个数
函数原型:size_type size() const;
cout
|