STL栈与队列的操作

栈(statck)这种数据结构在计算机中是相当出名的。栈中的数据是先进后出的(First In Last Out, FILO)。栈只有一个出口,允许新增元素(只能在栈顶上增加)、移出元素(只能移出栈顶元素)、取得栈顶元素等操作。在STL中,栈是以别的容器作为底部结构,再将接口改变,使之符合栈的特性就可以了。

使用标准库的栈和队列时,先包含相关的头文件

#include<stack>

#include<queue>

定义栈如下:

stack<int> stk;

定义队列如下:

queue<int> q;

栈提供了如下的操作

s.empty()              如果栈为空返回true,否则返回false
s.size()                返回栈中元素的个数
s.pop()                删除栈顶元素但不返回其值
s.top()                返回栈顶的元素,但不删除该元素
s.push()                在栈顶压入新元素

队列提供了下面的操作

q.empty()              如果队列为空返回true,否则返回false
q.size()                返回队列中元素的个数
q.pop()                删除队列首元素但不返回其值
q.front()              返回队首元素的值,但不删除该元素
q.push()                在队尾压入新元素
q.back()                返回队列尾元素的值,但不删除该元素

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/1a4464be690f546cf4345d16a7ccec3d.html