首页 > 代码库 > 第十三课、计算器核心解析算法(中)
第十三课、计算器核心解析算法(中)
一、中缀转后缀
1、中缀表达式转后缀表达式的过程类似编译过程
(1)、四则运算表达式中的括号必须匹配
(2)、根据运算符优先级进行转换
(3)、转换后的表达式中没有括号
(4)、转换后可以顺序计算出最后结果
2、转换过程
(1)、当元素e为数字:输出
(2)、当元素e为运算符:
A、与栈顶运算符进行优先级比较
B、小于等于:将栈顶元素输出,转A执行
C、大于:将当前元素e入栈
(3)、当前元素为e为左括号:入栈
(4)、当前元素e为右括号:
A、弹出栈顶元素并输出,直至栈顶元素为左括号
B、将栈顶的左括号从栈中弹出不要
二、关键点:括号匹配算法
(1)、括号成对出现
(2)、左括号必须先于右括号出现
三、小结
(1)、后缀表达式是程序计算复杂表达式的基础
(2)、中缀转后缀是基于栈数据结构的
(3)、转换过程能够发现表达式中的错误
第十三课、计算器核心解析算法(中)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。