- 3
- 0
- 约6.65千字
- 约 10页
- 2017-11-10 发布于江苏
- 举报
数据结构笔记之十一栈的应用之表达式求值实现
11、蛤蟆的数据结构笔记之十一栈的应用之表达式求值实现
本篇名言:“人生不售来回票,一旦动身,绝不能复返。”
继续栈应用实现,这次是来看下表达式求值的栈实现。
表达式求值
表达式求值是设计语言编译中的一个基本问题,它的实现是栈应用的又一个典型例子。
任何一个表达式都是由操作数(Operand)、运算符(operator)和界限符(delimiter)组成。
操作数可以是常数也可以是变量或变量的标识符。
运算符可以分为算术运算符、关系运算符和逻辑运算符三类。
界限符有左右括号和表达式结束符。
几个算术四则运算的规则:
先乘除,后加减;
从左算到右
先括号内,后括号外
此处实现,假定不出现语法错误,否则过于复杂,蛤蟆也不能理解了。
运算符优先级
对于连个相继出现的操作符θ1和θ2?有三种关系:大于、等于和小于。由此可以列出“+-*/”之间的优先级。如下表:
?+-*/()#+-*/(=?)?#?=
加减乘除优先性都低于“(”但是高于“)”,由运算从左到右可知,当θ1=θ2?,令θ1θ2
为了算法简洁,在表达式的左边和右边虚设一个“#”,这一对“#”表示一个表达式求值完成。
“(”=“)”当一对括号相遇时表示括号内已运算完成。
“)”和
您可能关注的文档
- 数学(一)试题答案解析.doc
- 数学(二)试题答案解析.doc
- 数学一轮复习精品试题第讲随机抽样用样本估计总体变量间的相互关系统计案例.doc
- 数学一试题答案解析.doc
- 数学三除数是一位数的除法课课练.doc
- 数字逻辑实验报告【个人完成】.doc
- 数学专项经典训练题:以内的加减法应用题.doc
- 数学一轮复习精品试题函数的图象.doc
- 数学中考试题分类汇编(勾股定理).doc
- 数学二分析详解和评注.doc
- 沪教版五四制六年级上册数学 2分数 分数的大小比较课件2.pptx
- 沪教版五四制六年级上册数学 2分数 分数运算的应用课件1.pptx
- 沪教版五四制六年级上册数学 3比和比例 等可能事件课件1.pptx
- 沪教版五四制六年级上册数学 2分数 分数的加减法课件2.pptx
- 沪教版五四制六年级上册数学 比的基本性质 (3).pptx
- 沪教版五四制六年级上册数学 2分数 分数的乘法课件1.pptx
- 沪教版五四制六年级上册数学 2分数 分数的除法课件1(1).pptx
- 沪教版五四制六年级上册数学 百分数的应用一.pptx
- 护理伦理困境与解决方案.pptx
- 沪教版五四制六年级上册数学 百分比的应用.pptx
原创力文档

文档评论(0)