队列
- queue模板类的定义在<queue>头文件中。
- queue 模板类也需要两个模板参数,一个是元素类型,一个容器类型,元素类型是必要的,容器类型是可选的,默认为deque 类型。
定义queue 对象的示例代码如下:
queue<int> q1;
queue<double> q2;
queue 的基本操作有:
入队,如例:q.push(x); 将x 接到队列的末端。
出队,如例:q.pop(); 弹出队列的第一个元素,注意,并不会返回被弹出元素的值。
-
-
- 访问队首元素,如例:q.front(),即最早被压入队列的元素。
- 访问队尾元素,如例:q.back(),即最后被压入队列的元素。
- 判断队列空,如例:q.empty(),当队列空时,返回true。
- 访问队列中的元素个数,如例:q.size()
-
ps:我刚刚写队列的时候,写成这个样 queue<int> arr[101];
。。。。然而不要定义大小!不要定义大小!STL都是不要定义大小
然后剩下的就是正常使用就好了。
队列练习题:搜索啊哈算法的 解密QQ号----队列
栈
栈是先进后出,因为只有一端可以操作。
包含头文件#include<stack>
- push(): 向栈内压入一个成员;
- pop(): 从栈顶弹出一个成员;
- empty(): 如果栈为空返回true,否则返回false;
- top(): 返回栈顶,但不删除成员;
- size(): 返回栈内元素的大小;