夏天ccys3 天前
算法·leetcode···队列
LeetCode Day5 -- 栈、队列、堆目录1.栈1.1 适用场景:需要回退/最近匹配1.2 普通栈 vs 单调栈2.队列2.1 适用场景:需要先进先出/BFS
yzzzzzzzzzzzzzzzzz7 天前
算法·
leetcode热题——有效的括号给定一个只包含 '(', ')', '{', '}', '[', ']' 的字符串,判断是否每个左括号都能被正确的右括号闭合,并且顺序正确。
回忆是昨天里的海8 天前
java··后缀表达式·前缀表达式
3.3.2_1栈在表达式求值中的应用(上)操作数就是下边的数,运算符就是+-*/,界限符就是(),去掉界限符之后运算的操作顺序发生改变,即界限符是必不可少的
剪一朵云爱着19 天前
算法·
力扣946. 验证栈序列这一题的思路和下面一题是一摸一一样的,都是模拟一个栈的过程。PAT 1051 Pop Sequence
梁辰兴1 个月前
c语言·数据结构·算法·c··队列
数据结构:栈和队列栈和队列是两种特殊的线性表,它们在操作上具有严格的限制,广泛应用于算法设计、系统开发等领域。栈(Stack) 是一种限定仅在表尾进行插入和删除操作的线性表,其核心特点可概括为**“后进先出”(Last In First Out,LIFO)**。
Alfred king1 个月前
字符串·
面试150 有效的括号通过栈去模拟,如果是遇到左括号,右括号进栈,如果当前栈一直为空或者当前元素与栈顶元素不相同,则说明不是有效的括号,直接返回False,然后如果当前元素和栈顶元素匹配,则将栈内的元素弹出。最后如果栈为空,说明是有效的括号,反则不是
会的全对٩(ˊᗜˋ*)و1 个月前
数据结构·经验分享·
【数据结构】栈熟悉栈的定义,栈的特点以及栈的基本操作。能够根据实际情况选择合适的存储结构,解决实际问题。对任意给定的一个中缀算术表达式输出等价的后缀形式。
float_com2 个月前
算法··单调栈
【单调栈】-----【Largest Rectangle in a Histogram】题目链接如图所示,在一条水平线上有 n n n 个宽为 1 1 1 的矩形,求包含于这些矩形的最大子矩形面积(图中的阴影部分的面积即所求答案)。
Cherl.2 个月前
开发语言·c++·类和对象··函数模板·类模板
C++ 函数模板与类模板目录引言函数模板基本概念代码示例解析实例化类模板基本概念代码示例解析实例化总结在 C++ 中,模板(Template)是一种强大的特性,它允许我们编写通用的代码,以处理不同的数据类型。模板分为函数模板和类模板,本文将结合实际代码,详细解析这两种模板,并以代码中的 Stack 类模板为例进行深入探讨。
CS创新实验室2 个月前
python···cpython·局部变量
CPython 局部变量存储机制:从 “栈上存储“ 看语言实现差异在 Python 开发中,常听到 局部变量存储在栈上 的说法,但这句话背后的技术细节却与 C/C++ 等语言存在本质区别。理解 CPython 的变量存储机制,不仅能解开这个认知谜团,还能帮助我们写出更高效率的代码。
笑口常开xpr2 个月前
数据结构··队列
线 性 数 据 结 构 双 雄:栈 与 队 列 的 原 理、实 现 与 应 用💻作 者 简 介:曾 与 你 一 样 迷 茫,现 以 经 验 助 你 入 门 数据 结 构。 💡个 人 主 页:@笑口常开xpr 的 个 人 主 页 📚系 列 专 栏:硬 核 数 据 结 构 与 算 法 ✨代 码 趣 语:栈 如 弹 夹,后 进 先 出;队 似 排 队,先 进 先 出。 💪代 码 千 行,始 于 坚 持,每 日 敲 码,进 阶 编 程 之 路。 📦gitee 链 接:gitee
积极向上的向日葵2 个月前
数据结构·算法·
有效的括号题解首先给出思路: 1.这道题要调用栈,详情可以看:https://blog.csdn.net/xpcxpt/article/details/148481903?spm=1001.2014.3001.5501
Tisfy2 个月前
leetcode·机器人·字符串·题解·贪心·
LeetCode 2434.使用机器人打印字典序最小的字符串:贪心(栈)——清晰题解力扣题目链接:https://leetcode.cn/problems/using-a-robot-to-print-the-lexicographically-smallest-string/
芜湖xin2 个月前
算法·
【题解-洛谷】B4278 [蓝桥杯青少年组国赛 2023] 简单算术题给定一道没有括号的四则混合运算算术题(可能包含多余的空格),请编程计算出结果。运算规则如下:例如:当算术题为 2 + 3 ∗ 4 − 10 / 6 + 1 / 2 ∗ 4 \tt{2 + 3*4 - 10/6 + 1/2*4} 2+3∗4−10/6+1/2∗4 时:
零叹2 个月前
java·数据结构·面试·面试题·双端队列··队列
篇章七 数据结构——栈和队列目录1. 栈(Stack)1.1 概念1.图示栈概念:2.栈在现实生活中的例子:1.2 栈的使用1.3 栈的模拟实现
理论最高的吻3 个月前
c++·算法·leetcode·职场和发展·字符串··字符匹配
1614. 括号的最大嵌套深度【 力扣(LeetCode) 】1614. 括号的最大嵌套深度给定 有效括号字符串 s,返回 s 的 嵌套深度。嵌套深度是嵌套括号的 最大 数量。
keep intensify3 个月前
c语言·数据结构·算法·
【数据结构】- 栈经过了几个月的漫长岁月,回头时年迈的小编发现,数据结构的内容还没有写博客,于是小编赶紧停下手头的活动,补上博客以洗清身上的罪孽
Espresso Macchiato4 个月前
leetcode··leetcode medium·leetcode 3523·leetcode周赛446
Leetcode 3523. Make Array Non-decreasing这一题思路上来说就是一个栈的问题,就是从后往前依次考察每一个元素,显然,当前位置要么被舍弃,要么被保留,但是无论如何其对应位置一定会留下一个至少不小于当前元素大小的新元素,因此,后续所有比起更小的元素都无法被保留。
xiaolingting4 个月前
java··二叉树非递归遍历
Java 二叉树非递归遍历核心实现非递归遍历的核心是用栈模拟递归的调用过程,通过手动维护栈来替代系统栈,实现前序、中序和后序遍历。以下是三种遍历的代码实现与关键逻辑分析:
代码AC不AC5 个月前
数据结构·学习·leetcode·练习·
【数据结构】栈 与【LeetCode】20.有效的括号详解栈:⼀种特殊的线性表,其只允许在固定的⼀端进行元素的插入和删除元素操作。进行数据插入和删除操作的⼀端称为栈顶,另⼀端称为栈底。栈中的数据元素遵守后进先出LIFO(Last In First Out)的原则。 压栈:栈的插入操作叫做进栈/压栈/入栈,入数据在栈顶。 出栈:栈的删除操作叫做出栈。出数据也在栈顶。 以上这张图片很好的反映了栈的结构,及出入栈的顺序。