P3【知识点】【数据结构】【栈Stack】C++讲解

栈:这种数据结构使用LIFO技术,其中LIFO表示后进先出。首先插入的元素将在末尾提取,以此类推。有一个名为"top"的元素,它是位于最上面位置的元素。所有插入和删除操作都是在堆栈的顶部元素本身进行的。

语法:
复制代码
template<class T, class Container = deque<T> > class stack;

1.访问元素(Access) O(1)访问栈顶元素

2.搜索元素(Search)O(N)

3.插入元素(insert)O(1)

4.删除元素(delete)O(1) 栈顶元素

具体操作:

1、创建栈
复制代码
stack <int> newst;
2、添加元素
复制代码
newst.push(55);
3、删除元素
复制代码
newst.pop();
4、查看栈顶元素
复制代码
cout << newst.top();
5、栈得长度
复制代码
newst.size();
6、栈是否为空
复制代码
sg.empty()
7、遍历栈(边删除栈顶,边遍历)
复制代码
void newstack(stack <int> ss)
{
	stack <int> sg = ss;
	while (!sg.empty())
	{
		cout << '\t' << sg.top();
		sg.pop();
	}
	cout << '\n';
}

练习力扣:

【20】有效得括号

【496】下一个更大得元素I

相关推荐
天若有情67311 分钟前
逆向玩家狂喜!用C++野生写法一键破解线性加密(不规范但巨好用)
开发语言·c++·算法
咸鱼翻身小阿橙14 分钟前
Qt QML调用C++注册类
java·c++·qt
爱写代码的倒霉蛋1 小时前
2022年天梯赛L1-8真题解析(哈希+排序)
数据结构·算法
代码中介商1 小时前
顺序表完全指南:从原理到实现
数据结构·顺序表
CoderCodingNo1 小时前
【信奥业余科普】C++ 的奇妙之旅 | 19:内存的门牌号——地址与指针的设计原理
开发语言·c++
澈2071 小时前
C++ list容器完全指南
数据结构·c++·链表
kyriewen2 小时前
WebAssembly:前端界的“外挂”,让C++代码在浏览器里跑起来
前端·c++·webassembly
承渊政道2 小时前
【动态规划算法】(完全背包问题从状态定义到空间优化)
数据结构·c++·学习·算法·leetcode·动态规划·哈希算法
超级大福宝3 小时前
【力扣48. 旋转图像】超好记忆版 + 口诀
c++·算法·leetcode