Suzy找到实习了吗Day 11 |栈与队列中途 20. 有效的括号,1047. 删除字符串中的所有相邻重复项,150. 逆波兰表达式求值
Day 11
- 20. 有效的括号
- 1047. 删除字符串中的所有相邻重复项
- 150. 逆波兰表达式求值
20. 有效的括号
注意栈不是一个数据结构,需要自己用list实现栈的逻辑
class Solution:def isValid(self, s: str) -> bool:mystack=[]for i in s:if i=='(' or i=='{' or i=='[':mystack.append(i)#print(i,mystack)else:#等于右括号了if(len(mystack)==0):return Falseans=mystack.pop()if i==')' and ans=='(':continueelif i=='}' and ans=='{':continueelif i==']' and ans=='[':continueelse:return Falseif len(mystack)==0:return Trueelse:return False
1047. 删除字符串中的所有相邻重复项
class Solution:def removeDuplicates(self, s: str) -> str:mystack=[]for i in range(len(s)):#print(mystack)if (len(mystack)==0):mystack.append(s[i])continuematch=mystack.pop()if match==s[i]:continueelse:mystack.append(match)mystack.append(s[i])return ''.join(mystack)
150. 逆波兰表达式求值
我的数据结构知识没丢啊 真厉害!!!!
class Solution:def evalRPN(self, tokens: List[str]) -> int:mystack=[]for i in tokens:#print(mystack)if not(i =='+' or i=='-' or i=='*' or i=='/'):# 等于算数mystack.append(i)else: #等于算符num1=int(mystack.pop())num2=int(mystack.pop())if i=='+':res=num2+num1elif i=='-':res=num2-num1elif i=='*':res=num2*num1else:res=num2/num1mystack.append(res)return int(mystack.pop())
Suzy找到实习了吗Day 11 |栈与队列中途 20. 有效的括号,1047. 删除字符串中的所有相邻重复项,150. 逆波兰表达式求值相关推荐
- 代码随想录算法训练Day11 LeetCode232. 用栈实现队列(模拟);225.用队列实现栈(模拟);20. 有效的括号(栈应用);1047. 删除字符串中的所有相邻重复项(栈应用)
代码随想录算法训练Day11 | LeetCode232. 用栈实现队列(模拟):225.用队列实现栈(模拟):20. 有效的括号(栈应用):1047. 删除字符串中的所有相邻重复项(栈应用) 关于栈 ...
- 算法训练Day11 | LeetCode232. 用栈实现队列(模拟);225.用队列实现栈(模拟);20. 有效的括号(栈应用);1047. 删除字符串中的所有相邻重复项(栈应用)
目录 LeetCode232.用栈实现队列 1. 思路 2. 代码实现 3. 复杂度分析 4. 思考 LeetCode225. 用队列实现栈 1. 思路 2. 代码实现 3. 复杂度分析 4. 思考 ...
- 【Leetcode栈与队列】1047.删除字符串中的所有相邻重复项 6120.数组能形成多少数对(一些题外话和做题经验!!看作对对碰游戏!!)
文章目录 题外话 1.游戏开发可能使用栈结构 2.编程语言的一些功能实现也会使用栈结构 Leetcode 1047.删除字符串中的所有相邻重复项 1.问题描述 2.解决方案 Leetcode 6120 ...
- leetcode 1047. 删除字符串中的所有相邻重复项(栈)
给出由小写字母组成的字符串 S,重复项删除操作会选择两个相邻且相同的字母,并删除它们. 在 S 上反复执行重复项删除操作,直到无法继续删除. 在完成所有重复项删除操作后返回最终的字符串.答案保证唯一. ...
- 代码随想录第11天 | LeetCode20. 有效的括号、LeetCode1047. 删除字符串中的所有相邻重复项、LeetCode150. 逆波兰表达式求值
day11 | LeetCode20. 有效的括号.LeetCode1047. 删除字符串中的所有相邻重复项.LeetCode150. 逆波兰表达式求值 文章目录 day11 | LeetCode20 ...
- 【栈】【150. 逆波兰表达式求值】【中等】(需回顾)
根据逆波兰表示法,求表达式的值. 有效的运算符包括 +, -, *, / .每个运算对象可以是整数,也可以是另一个逆波兰表达式. 说明: 整数除法只保留整数部分. 给定逆波兰表达式总是有效的.换句话说 ...
- leetcode 150. 逆波兰表达式求值(栈)
根据 逆波兰表示法,求表达式的值. 有效的算符包括 +.-.*./ .每个运算对象可以是整数,也可以是另一个逆波兰表达式. 说明: 整数除法只保留整数部分. 给定逆波兰表达式总是有效的.换句话说,表达 ...
- leetcode1047. 删除字符串中的所有相邻重复项(栈的日常应用)
给出由小写字母组成的字符串 S,重复项删除操作会选择两个相邻且相同的字母,并删除它们. 在 S 上反复执行重复项删除操作,直到无法继续删除. 在完成所有重复项删除操作后返回最终的字符串.答案保证唯一. ...
- 【Leetcode栈与队列】150. 逆波兰表达式求值(后缀表达式求值,看作对对碰游戏)
文章目录 Leetcode150 1.问题描述 2.解决方案 3.计算机的思考方式 Leetcode150 1.问题描述 2.解决方案 1.逆波兰表达式优点 2.逆波兰表达式相当于是二叉树中的后序遍历 ...
最新文章
- 今年阿里双十一CDN要冲历史之最,峰值带宽达到5000G+,来高手分析一下他们的CDN节点数量和规模...
- Gstreamer中一些gst-launch常用命令
- Leet Code OJ 172. Factorial Trailing Zeroes [Difficulty: Easy]
- @Data注解不生效的原因
- SAP S/4HANA Material Fiori应用根据扩展字段搜索的实现原理
- 【树莓派学习笔记】五、处理、自动重命名并另存为图片
- EC20模组使用MQTT库对接EMQX,基于STM32F407
- latex 三线表_LaTeX学习记录(3):使用图表
- Linux nm命令
- 2016蓝桥杯C++A:消除尾一(二进制运算)
- robot framework -重点记录
- Centos7重置用户密码
- css给div四角添加效果
- shiny 服务器未响应,shiny-server 安装过程出现问题总结
- Android自定义ViewGroup的布局,往往都是从流式布局开始
- XenApp发布IE为默认最大化
- python爬取豆瓣书籍_Python利用lxml模块爬取豆瓣读书排行榜的方法与分析
- 前端笔记(03)——一文看懂flex布局
- Hander异步消息处理机制完全解析
- Java进阶教程-马士兵