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. 逆波兰表达式求值相关推荐

  1. 代码随想录算法训练Day11 LeetCode232. 用栈实现队列(模拟);225.用队列实现栈(模拟);20. 有效的括号(栈应用);1047. 删除字符串中的所有相邻重复项(栈应用)

    代码随想录算法训练Day11 | LeetCode232. 用栈实现队列(模拟):225.用队列实现栈(模拟):20. 有效的括号(栈应用):1047. 删除字符串中的所有相邻重复项(栈应用) 关于栈 ...

  2. 算法训练Day11 | LeetCode232. 用栈实现队列(模拟);225.用队列实现栈(模拟);20. 有效的括号(栈应用);1047. 删除字符串中的所有相邻重复项(栈应用)

    目录 LeetCode232.用栈实现队列 1. 思路 2. 代码实现 3. 复杂度分析 4. 思考 LeetCode225. 用队列实现栈 1. 思路 2. 代码实现 3. 复杂度分析 4. 思考 ...

  3. 【Leetcode栈与队列】1047.删除字符串中的所有相邻重复项 6120.数组能形成多少数对(一些题外话和做题经验!!看作对对碰游戏!!)

    文章目录 题外话 1.游戏开发可能使用栈结构 2.编程语言的一些功能实现也会使用栈结构 Leetcode 1047.删除字符串中的所有相邻重复项 1.问题描述 2.解决方案 Leetcode 6120 ...

  4. leetcode 1047. 删除字符串中的所有相邻重复项(栈)

    给出由小写字母组成的字符串 S,重复项删除操作会选择两个相邻且相同的字母,并删除它们. 在 S 上反复执行重复项删除操作,直到无法继续删除. 在完成所有重复项删除操作后返回最终的字符串.答案保证唯一. ...

  5. 代码随想录第11天 | LeetCode20. 有效的括号、LeetCode1047. 删除字符串中的所有相邻重复项、LeetCode150. 逆波兰表达式求值

    day11 | LeetCode20. 有效的括号.LeetCode1047. 删除字符串中的所有相邻重复项.LeetCode150. 逆波兰表达式求值 文章目录 day11 | LeetCode20 ...

  6. 【栈】【150. 逆波兰表达式求值】【中等】(需回顾)

    根据逆波兰表示法,求表达式的值. 有效的运算符包括 +, -, *, / .每个运算对象可以是整数,也可以是另一个逆波兰表达式. 说明: 整数除法只保留整数部分. 给定逆波兰表达式总是有效的.换句话说 ...

  7. leetcode 150. 逆波兰表达式求值(栈)

    根据 逆波兰表示法,求表达式的值. 有效的算符包括 +.-.*./ .每个运算对象可以是整数,也可以是另一个逆波兰表达式. 说明: 整数除法只保留整数部分. 给定逆波兰表达式总是有效的.换句话说,表达 ...

  8. leetcode1047. 删除字符串中的所有相邻重复项(栈的日常应用)

    给出由小写字母组成的字符串 S,重复项删除操作会选择两个相邻且相同的字母,并删除它们. 在 S 上反复执行重复项删除操作,直到无法继续删除. 在完成所有重复项删除操作后返回最终的字符串.答案保证唯一. ...

  9. 【Leetcode栈与队列】150. 逆波兰表达式求值(后缀表达式求值,看作对对碰游戏)

    文章目录 Leetcode150 1.问题描述 2.解决方案 3.计算机的思考方式 Leetcode150 1.问题描述 2.解决方案 1.逆波兰表达式优点 2.逆波兰表达式相当于是二叉树中的后序遍历 ...

最新文章

  1. 今年阿里双十一CDN要冲历史之最,峰值带宽达到5000G+,来高手分析一下他们的CDN节点数量和规模...
  2. Gstreamer中一些gst-launch常用命令
  3. Leet Code OJ 172. Factorial Trailing Zeroes [Difficulty: Easy]
  4. @Data注解不生效的原因
  5. SAP S/4HANA Material Fiori应用根据扩展字段搜索的实现原理
  6. 【树莓派学习笔记】五、处理、自动重命名并另存为图片
  7. EC20模组使用MQTT库对接EMQX,基于STM32F407
  8. latex 三线表_LaTeX学习记录(3):使用图表
  9. Linux nm命令
  10. 2016蓝桥杯C++A:消除尾一(二进制运算)
  11. robot framework -重点记录
  12. Centos7重置用户密码
  13. css给div四角添加效果
  14. shiny 服务器未响应,shiny-server 安装过程出现问题总结
  15. Android自定义ViewGroup的布局,往往都是从流式布局开始
  16. XenApp发布IE为默认最大化
  17. python爬取豆瓣书籍_Python利用lxml模块爬取豆瓣读书排行榜的方法与分析
  18. 前端笔记(03)——一文看懂flex布局
  19. Hander异步消息处理机制完全解析
  20. Java进阶教程-马士兵

热门文章

  1. I2C+E2PROM再回顾ing~
  2. 65个外贸小心思,让你稳步赢得客户
  3. 几个常用的ASP木马
  4. Centos7 更换yum源
  5. 本地生活商家和达人注意了,如何提高核销率
  6. 《白夜行》读后感:忽视就是虐待
  7. CESM简单应用:将HadiSST作为海温强迫场进行CESM控制实验 -compset F FC5 FCN
  8. Photoshop-颜色的调整
  9. python01python的基础知识点(一)
  10. 【Jenkins+青藤云】基于Jenkins部署青藤云镜像扫描插件(2)—部署问题解决