逆波兰表达式

计算机表达式的计算处理

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

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

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

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

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

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

相关推荐
sulikey23 分钟前
个人Linux操作系统学习笔记11 - 环境变量
linux·笔记·学习
zephyr0525 分钟前
数据结构-并查集
数据结构
稚南城才子,乌衣巷风流1 小时前
动态树(Dynamic Tree)数据结构详解
数据结构·算法
治愈系贝壳1 小时前
ARM --- day 6 时钟
linux·arm开发·学习
zander2582 小时前
114. 二叉树展开为链表
数据结构·链表·深度优先
minglie12 小时前
zynq高频小数据量PS闭环的三个实验-第0课:目的和目标
学习
小肝一下2 小时前
3. 单链表
c语言·数据结构·c++·算法·leetcode·链表·dijkstra
劈星斩月3 小时前
监督学习算法 之 决策树
学习·算法·决策树
tachibana23 小时前
hot100 前 K 个高频元素(347)
java·数据结构·算法·leetcode
AOwhisky3 小时前
Python 学习笔记(第五期)——组合数据类型:列表、元组、集合与字典精讲——核心知识点自测与详解
开发语言·笔记·python·学习·云计算