栈
liuyang-neu
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
力扣 232.用栈实现队列
思路:使用两个栈,将一个栈当作输入栈,用于压入 push 传入的数据;另一个栈当作输出栈,用于 pop 和 peek 操作。每次 pop 或 peek 时,若输出栈为空则将输入栈的全部数据依次弹出并压入输出栈,这样输出栈从栈顶往栈底的顺序就是队列从队首往队尾的顺序。in2out();in2out();// 自己定义的方法:将输入栈的全部数据弹出并压入输出栈(2=to)while (!原创 2025-06-09 09:54:21 · 385 阅读 · 0 评论 -
力扣 739.每日温度
法一:利用单调栈栈中记录还没算出下一个更大元素的那些数的下标。相当于栈是一个 todolist,在循环的过程中,现在还不知道答案是多少,在后面的循环中会算出答案。如73,74,75,71,69,72,76,73 开始栈为空,73的下标0入栈,然后遍历到第二个的时候74>73弹出0,res[0] = 1-0,74的下标1入栈…最后76,73入栈了就一直在栈里面了,res[] 为初始值0i < length;return ans;原创 2025-05-28 09:37:54 · 739 阅读 · 0 评论 -
力扣 394.字符串解码
/ 数字栈:保存嵌套层级的重复次数// 字符串栈:保存前面已经处理好的字符串// 当前重复次数压栈// 将前面处理好的字符串压栈保存一下multi = 0;// 重置重复次数// 重置当前字符串// 弹出重复次数i++) { // 重复当前层字符串// 拼接外层字符串}else{原创 2025-05-26 10:38:25 · 339 阅读 · 0 评论 -
力扣 155.最小栈
因为要实现在常数时间内检索到栈中的最小元素,所以使用数组栈,每个数组保存[当前值, 当前最小值]。}else {原创 2025-05-26 10:36:47 · 347 阅读 · 0 评论 -
力扣 678.有效的括号字符串
需要两个栈分别存储左括号和星号的下标(为了最后判断用星号作为有括号时是否符合题意)。从左到右遍历字符串,进行如下操作:如果遇到左括号,则将当前下标存入左括号栈。如果遇到星号,则将当前下标存入星号栈。如果遇到右括号,则需要有一个左括号或星号和右括号匹配,由于星号也可以看成右括号或者空字符串,因此当前的右括号应优先和左括号匹配,没有左括号时和星号匹配:如果左括号栈不为空,则从左括号栈弹出栈顶元素;如果左括号栈为空且星号栈不为空,则从星号栈弹出栈顶元素;原创 2025-05-25 10:06:49 · 358 阅读 · 0 评论
分享