20. 有效的括号
题目链接:https://leetcode.cn/problems/valid-parentheses/
0x1 看到题目的第一想法
- 没想法
0x2 自己实现过程中遇到哪些困难
0x3 今日学习的文章链接,或者视频链接
0x4 看完代码随想录之后的想法
- 括号匹配
- 栈
- 考虑匹配失败的三种情况
- 左括号多了 -> s遍历完了,栈不为空
- 右括号多了 -> s还没遍历完,栈就空了
- 左右括号一样多,但是左右括号不匹配 -> item和stack[-1]不相等
- 遍历s,如果是左括号就将相应的右括号加入栈中;否则考虑情况2 3
- 考虑情况3,返回True还是False
0x5 今日收获,记录一下自己的学习时长
- 对称匹配类
- 栈
- 45min
1047. 删除字符串中的所有相邻重复项
题目链接:https://leetcode.cn/problems/remove-all-adjacent-duplicates-in-string/
0x1 看到题目的第一想法
0x3 今日学习的文章链接,或者视频链接
0x4 看完代码随想录之后的想法
- 匹配相邻元素,最后都是做消除的操作
- 栈的目的,就是存放遍历过的元素,当遍历当前的这个元素的时候,去栈里看一下我们是不是遍历过相同数值的相邻元素。然后再去做对应的消除操作
0x5 今日收获,记录一下自己的学习时长
- 删除相邻元素
- 栈
- 45min
150. 逆波兰表达式求值
题目链接:https://leetcode.cn/problems/evaluate-reverse-polish-notation/
0x1 看到题目的第一想法
0x3 今日学习的文章链接,或者视频链接
0x4 看完代码随想录之后的想法
- 栈
-适合用栈操作运算:遇到数字则入栈;遇到运算符则取出栈顶两个数字进行计算,并将结果压入栈中。
0x5 今日收获,记录一下自己的学习时长
- 逆波兰表达式:是一种后缀表达式,所谓后缀就是指运算符写在后面
- 求后缀表达式
- 栈
- 30min
待重点复习
20, 1047
总结
- 栈与队列
- 用栈实现队列
- 用队列实现栈