计算后缀表达式的过程(C#)
2024-09-07 03:14:00
计算后缀表达式的过程是一个很好玩的过程,而且很简单哦!这里呢,有个计算的技巧,就是:遇到数字直接入栈,遇到运算符就计算!
后缀表达式也叫逆波兰表达式,求值过程可以用到栈来辅助存储;
假定待求值的后缀表达式为:12 4 + 13 - 6 2 * + =
求计算出最终结果:
(1)首先我们看到在第一个运算符之前呢,有两个数字,那么我们就先把它放入栈中:
注:我们可以看到,下标是从下方开始读的,一定要注意哦,不要弄反了!!!
(2)读到“+”,则弹出12和4,执行相加,12+4,=16,并把16放进栈中:(先弹12,再弹4,顺序不能弄错了!!)
(3)读到数字“13”,则直接把13放入栈内:
(4)读到运算符“-”,则弹出16和13,执行相减,那么16-13=3,并把3放入到栈中:
注:在这里我们可以看到,如果我们把弹出的顺序弄反了,那么得到的数字就会完全不同,那后面的结算也会完全不一样,所以,弹出的顺序不能弄反了!!!
(5)读到数字“6”,直接入栈:
(6)读到数字“2”,直接入栈:
(7)读到运算符“*”,弹出6和2,执行相乘,6*2=12,并把12放入到栈中:
(8)读到运算符“+”,则弹出3和12,执行相加,3+12=15,并把15放入栈中:
(9)到了这里,我们已经把后缀表达式都已经执行了一遍,那么得到的最后结果为15,故:
12 4 + 13 - 6 2 * + = 15
这就是运算过程,是不是很简单!!!
END
最新文章
- 探索ASP.NET MVC5系列之~~~3.视图篇(下)---包含常用表单和暴力解猜防御
- buaaoj230——next_permutation的应用
- c#中的static
- 内核参数优化/etc/sysctl.conf
- 利用Anaconda安装python后,如何安装opencv-python
- [Python笔记]第三篇:深浅拷贝、函数
- RR模式下的事务隔离
- PHP配置安全小技巧
- 使用MBROSTool 工具制作U盘多启动盘的方法总结
- 【windows】 配置一个本地的tomcat服务器
- Mocha+should+Karma自动化测试教程
- 模块(modue)和包(package)的概念-import导入模块
- Game Engine Architecture 5
- SpringBoot项目获取ApplicationContext来GetBean的方法
- Vim文档编辑
- ARM内核版本号和SOC版本号
- android资源文件
- javascript方法--bind()
- vue 3D小球 loading
- 03-03:springBoot 整合thymeleaf