概述
stack容器
stack是堆栈容器,是一种“先进后出”的容器。stack是基于deque容器而实现的容器。
使用
#include<stack>//头文件
stack对象的默认构造
stack采用模板类实现, stack对象的默认构造形式:
stack stkT;
stack<int> stkint;
stack<float> stkfloat;
stack<string> stkstr;
也可以设置指针类型或者自定义的结构体类型。
出栈和入栈操作
stkint.push(1);//入栈整型1
stkint.pop();//出栈
stkInt.push(1);
stkInt.push(2);
stkInt.pop();
stkInt.push(3);
//此时stkInt存放的元素是1, 3
stack数据存取
stkint.top();//返回最后一个入栈的元素
stack的大小
stkint.empty();//判断堆栈是否为空,若为空返回true
stack.size();//返回堆栈的大小
C++中stack
pop(), 返回void,
top(),返回栈顶的引用。
所以想要提取栈顶元素,直接用s.top()
stack没有现成的清空函数(clear),一半采用两种方法进行清空:
1.逐一弹出栈顶元素
stack<int> intstk;
while(!intstk.empty()) intstk.pop();
2.和空栈交换
swap相当于交换了intstk和一个空的临时堆栈的内容,然后临时堆栈再结束生命周期,但由于操作的是堆空间,其实还是一个一个释放空间。该方法的速度要比1快一些。
stack<int> intstk;
stack<int>().swap(intstk);
例题
- 有效的括号(力扣)
最后
以上就是粗暴酒窝为你收集整理的stack容器的使用stack容器的全部内容,希望文章能够帮你解决stack容器的使用stack容器所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复