逆波兰表达式

计算机表达式的计算处理

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

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

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

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

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

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

相关推荐
shylyly_17 小时前
大小端字节序
数据结构·算法·联合体·大小端字节序·字节序判断
故事和你9118 小时前
洛谷-【图论2-1】树6
开发语言·数据结构·c++·算法·深度优先·动态规划·图论
芋只因18 小时前
天机学堂学习笔记
java·笔记·学习
YL2004042618 小时前
044二叉搜索树中第K小的元素
数据结构·leetcode
图码18 小时前
生命游戏的优雅解法:从O(mn)空间到O(1)空间的进阶之旅
数据结构·算法·游戏·矩阵·空间计算
员宇宙18 小时前
k8s学习笔记
笔记·学习·kubernetes
薇茗18 小时前
【初阶数据结构】 升沉有序的平仄 排序
c语言·数据结构·算法·排序算法
Lochor Lee18 小时前
C++学习笔记——输入输出的格式
c++·笔记·学习
babe小鑫18 小时前
2026数字营销专业人士学习数据分析的必要性
学习·数据挖掘·数据分析
吃好睡好便好19 小时前
在Matlab中绘制二维等高线图
开发语言·人工智能·学习·算法·matlab