栈和队列6|中缀表达式转换为后缀表达式 – 数据结构和算法28
来源:互联网 发布:淘宝店铺流量来源分析 编辑:程序博客网 时间:2024/05/21 06:17
栈和队列6:中缀表达式转换为后缀表达式
让编程改变世界
Change the world by program
课前谈一谈
今天我们课前谈一谈,要说点什么好呢?
最近小甲鱼发现,很多鱼油在学习数据结构和算法的时候积极性已经开始有点下降了。甚至很多朋友怀疑数据结构和算法到底有没有用?
实话说,在大厦的防震设计、消除疾病、防止水源枯竭这些实际问题中,很遗憾,数据结构和算法几乎起不到任何直接作用。。。。。。
那为什么我们要学呢?
很简单,它可以锻炼我们的“高级”思维!
何为“高级”思维?
这所谓的“高级”也是小甲鱼自己发明的,算法的重要性不用说大家都知道,一个程序,特别是大型程序,优秀的算法和架构跟一般的算法和架构效率差别是千万倍!
这就可以解释为什么国产的几大应用都在前几天相继投入血本进行重构。
这就跟建高楼大厦要打好根基是一个道理,很多人喜欢当“暴发户”,根基没打好就开始盖房,但盖到四五层的时候发现根基不稳,拆掉重盖!
中缀表达式转换为后缀表达式
小甲鱼上节课带大家编写了一个逆波兰计算器。
但是,我们人类确实是喜欢这样的表达式:(1-2)*(4+5)
而不是这样的:1 2 – 4 5 + *
所以,我们这节课的任务就是编写一个程序,将用户输入的中缀表达式转换为后缀表达式,而作为课后作业的延生,要求大家动手写一个中缀表达式计算器!
那么如何将“(1-2)*(4+5)”转化为“1 2 – 4 5 + *”呢?
其实很简单,利用栈的“记忆”吧,符号都推入栈即可。
我们大家很清楚我们将要进入看图识字环节了!
为了使得问题变得更加复杂,我们把假想敌设为:1+(2-3)*4+10/5
No pic you say a J8……
提示:备纸和笔随时记下输出内容!
首先遇到第一个输入是数字1,数字在后缀表达式中都是直接输出,接着是符号“+”,入栈:
第三个字符是“(”,依然是符号,入栈,接着是数字2,输出,然后是符号“-”,入栈:
- 栈和队列6|中缀表达式转换为后缀表达式 – 数据结构和算法28
- 《数据结构和算法》之中缀表达式、后缀表达式转换
- 【数据结构】中缀表达式转换为后缀表达式
- 中缀表达式转换为后缀表达式-数据结构
- [栈和队列]从中缀向后缀转换表达式
- 中缀表达式转换为后缀表达式算法
- 算法之中缀表达式和后缀表达式
- 算法之中缀表达式和后缀表达式
- 数据结构:中缀表达式如何转换为后缀表达式
- 数据结构Java实现06----中缀表达式转换为后缀表达式
- Java数据结构06----中缀表达式转换为后缀表达式
- 数据结构Java实现06----中缀表达式转换为后缀表达式
- 数据结构Java实现06----中缀表达式转换为后缀表达式
- 数据结构算法:中缀表达式转化为后缀表达式
- 中缀和后缀表达式
- 中缀表达式转换为后缀表达式的算法
- 中缀表达式转换为后缀表达式的算法
- 中缀表达式转换为前缀后缀表达式的算法流程图
- ApplicationContextUtil_me
- RHEL6.3安装ffmpeg
- Mac 下android sudio 如何获取sha1与md5值
- Meteor发布、订阅
- Java 内存结构备忘录
- 栈和队列6|中缀表达式转换为后缀表达式 – 数据结构和算法28
- Activity和IntentFilter的匹配过程
- 用xpdf和pdfbox来处理中文PDF文档及其比较
- MFC选择目录SHBrowseForFolder选择文件CFileDialog对话框设置默认路径
- spanner论文zt
- 自定义Dialog
- 第12周项目2——操作用邻接表存储的图
- Codeforces596C Wilbur and Points(贪心)
- 文件系统中的保留空间