逆波兰表达式

计算机表达式的计算处理

我们日常写的计算表达式都是中缀表达式 ,计算机进行计算工作时,都是先将输入的中缀表达式转为后缀表达式(逆波兰表达式 ),再将后缀表达式字符串引用数组遍历转数字数据在进栈与出栈中与转的运算符字符进行对应计算与存值:

1.中缀表达式转后缀表达式

将中缀表达式里所有计算的单元都用小括号扩起来 ,将括号里的运算符字符都移到所属括号的外头 ,再将所有的括号去掉,就成了后缀表达式

2.遍历后缀表达式字符串引用数组

  • 如果引用指向的是数字数据 的字符串,就将数字数据字符串转为数字数据抛进栈里
  • 如果引用指向的是运算符 的字符串,就从栈中抛出掉两个数字数据依次放在运算符右左端进行对应计算得值,并将得值再抛入栈中

最后字符串引用数组遍历完后,栈中剩下的那一个数字数据就是整个计算表达式的值

相关推荐
西岸行者6 天前
学习笔记:SKILLS 能帮助更好的vibe coding
笔记·学习
琢磨先生David6 天前
Day1:基础入门·两数之和(LeetCode 1)
数据结构·算法·leetcode
悠哉悠哉愿意6 天前
【单片机学习笔记】串口、超声波、NE555的同时使用
笔记·单片机·学习
qq_454245036 天前
基于组件与行为的树状节点系统
数据结构·c#
超级大福宝6 天前
N皇后问题:经典回溯算法的一些分析
数据结构·c++·算法·leetcode
别催小唐敲代码6 天前
嵌入式学习路线
学习
岛雨QA6 天前
常用十种算法「Java数据结构与算法学习笔记13」
数据结构·算法
weiabc6 天前
printf(“%lf“, ys) 和 cout << ys 输出的浮点数格式存在细微差异
数据结构·c++·算法
wefg16 天前
【算法】单调栈和单调队列
数据结构·算法
岛雨QA6 天前
图「Java数据结构与算法学习笔记12」
数据结构·算法