文章目录

  • Leetcode150
    • 1.问题描述
    • 2.解决方案
    • 3.计算机的思考方式

Leetcode150

1.问题描述


2.解决方案

1.逆波兰表达式优点

2.逆波兰表达式相当于是二叉树中的后序遍历,又是一个类似对对碰的题目

3.你会发现我代码实现的时候完全没考虑意外情况,也就是后缀表达式不合法会有一些意外,判空,或者遇到第一个运算符,栈中没有两个元素等等这种不合法,主要是题目中都说了没有不合法,但如果没说判断意外也是很复杂的!

class Solution {public:int evalRPN(vector<string>& tokens) {stack<int> s;for (string item: tokens) {if(item=="+"||item=="-"||item=="*"||item=="/"){int a=s.top(); s.pop();int b=s.top(); s.pop();if(item=="+") s.push(b+a);if(item=="-") s.push(b-a);if(item=="*") s.push(b*a);if(item=="/") s.push(b/a);} else{s.push(stoi(item));}}return s.top();}
};

3.计算机的思考方式

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

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

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

  2. 栈与队列(逆波兰式)

    150.逆波兰表达式求值 根据 逆波兰表示法,求表达式的值. 有效的算符包括 +.-.*./ .每个运算对象可以是整数,也可以是另一个逆波兰表达式. 注意两个整数之间的除法只保留整数部分. 可以保证给 ...

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

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

  4. 【C++】栈的应用:逆波兰式的实现

    逆波兰表达式 一.定义 二.逆波兰式的意义 三.逆波兰式的实现 1.方法 (1)中缀表达式转化为后缀表达式 (2)由后缀表达式计算结果 2.代码实现 一.定义 逆波兰式,又称后缀表达式,指的是操作符在 ...

  5. Suzy找到实习了吗Day 11 |栈与队列中途 20. 有效的括号,1047. 删除字符串中的所有相邻重复项,150. 逆波兰表达式求值

    Day 11 20. 有效的括号 1047. 删除字符串中的所有相邻重复项 150. 逆波兰表达式求值 20. 有效的括号 注意栈不是一个数据结构,需要自己用list实现栈的逻辑 class Solu ...

  6. 算法训练Day11|LeetCode 20. 有效的括号、1047. 删除字符串中的所有相邻重复项、150. 逆波兰表达式求值

    题目链接:20. 有效的括号 第一种情况:已经遍历完了字符串,但是栈不为空,说明有相应的左括号没有右括号来匹配,所以return false 第二种情况:遍历字符串匹配的过程中,发现栈里没有要匹配的字 ...

  7. LetCode: 150. 逆波兰表达式求值

    提示 LintCode中的相关算法题实现代码,可以在我的GithHub中下载. 题目需求 根据逆波兰表示法,求表达式的值. 有效的运算符包括 +, -, *, / .每个运算对象可以是整数,也可以是另 ...

  8. 算法训练第十一天|力扣20. 有效的括号,1047. 删除字符串中的所有相邻重复项,150. 逆波兰表达式求值

    20. 有效的括号 题目链接:有效的括号 参考:https://programmercarl.com/0020.%E6%9C%89%E6%95%88%E7%9A%84%E6%8B%AC%E5%8F%B ...

  9. 使用栈实现中缀表达式转换成后缀表达式并计算结果(逆波兰计算器)

    一.中缀表达式转换成后缀表达式 具体步骤如下: 1.初始化栈stack(暂时存放运算符)以及集合list(存放后缀表达式) 2.从左向右扫描中缀表达式 3.当前元素为数字时,直接添加到list中 4. ...

最新文章

  1. 上三角矩阵的特征值分解
  2. Java网络编程——9.服务器Socket
  3. SIGIR 2019 开源论文 | 基于图神经网络的协同过滤算法
  4. shouldOverrideUrlLoading(拦截url加载,除资源请求的url) shouldInterceptRequest(拦截所有url请求)
  5. 大数据之-Hadoop完全分布式_RM启动注意事项---大数据之hadoop工作笔记0041
  6. Verilog中parameter(参数)与define(宏定义)的区别
  7. 尚硅谷Java学习笔记Lecture1
  8. ce标志cad_CAD标识
  9. python10的负n次方_python的次方
  10. DTCloud编码规范
  11. java转大写的方法_Java字母大小写转换的方法
  12. cesium 漫游飞行_cesium之三维漫游飞行效果实现篇
  13. Python获取并输出当前日期时间
  14. The CATALINA_HOME environment variable is not defined correctly
  15. 中考计算机考试辽宁,2019年辽宁中考考试时间安排,辽宁中考考试科目时间安排表...
  16. Postman INTERCEPTOR DISCONNECTED
  17. realme真我笔记本Air官宣发布时间 将于7月12日发布
  18. k8s中使用基于nfs的storageclass
  19. 攻防世界-Misc-新手练习记录
  20. unity游戏重新开始,退出,停止,继续按钮及打包发布

热门文章

  1. 在Google Chrome浏览器中使儿童浏览更安全
  2. 一笑相逢蓬海路。人间风月如尘土。—第二十七天
  3. NVIDIA显卡配置
  4. 必读!未来月薪10万的五大利器(二)
  5. 龙虎榜小红牛股票池@2021新年开源福利
  6. 后端实现上传文件接口,并使用阿里云的oss对象存储
  7. 为什么你需要找一个程序猿做男票?
  8. Day2 Numerical simulation of optical wave propagation之标量衍射理论基本原理(二)
  9. csgo服务器不稳定,csgo连接到任意官方服务器失败是因为什么
  10. Intel® QAT加速卡之逻辑实例