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

相关推荐
鱼跃鹰飞14 小时前
LeetCode热题100: 49.字母异位词分组
java·数据结构·算法·leetcode
一叶之秋141215 小时前
告别浅层调用:深入模拟实现STL Stack/Queue/Priority_Queue,知其所以然
c++·stl
耶耶耶耶耶~15 小时前
关于软件开发的一些思考
c++
量子炒饭大师15 小时前
【C++入门】Cyber骇客构造器的核心六元组 —— 【类的默认成员函数】明明没写构造函数也能跑?保姆级带你掌握六大类的默认成员函数(上:函数篇)
开发语言·c++·dubbo·默认成员函数
charlie11451419115 小时前
嵌入式C++开发——RAII 在驱动 / 外设管理中的应用
开发语言·c++·笔记·嵌入式开发·工程实践
Fcy64815 小时前
C++11 新增特性(中)
开发语言·c++·c++11·可变参数模版·c++11 类的新增功能·c++11slt新增特性
恒者走天下15 小时前
计算机想学习某个方向,怎么知道学习路线
c++
好奇龙猫15 小时前
【大学院-筆記試験練習:线性代数和数据结构(16)】
数据结构·线性代数·决策树
小尧嵌入式15 小时前
【Linux开发五】条件变量|信号量|生产者消费者模型|信号概念和常见信号|信号的使用和处理
linux·运维·服务器·开发语言·c++·嵌入式硬件
智者知已应修善业15 小时前
【输出方形点阵】2024-11-1
c语言·c++·经验分享·笔记·算法