网站大量收购闲置独家精品文档,联系QQ:2885784924

数据结构--3(栈)详解.ppt

  1. 1、本文档共39页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
步骤 操作数栈 运算符栈 说明 10 7 -进入运算符栈 4进入操作数栈 /进入运算符栈 2进入操作数栈 退栈 4/2进入操作数栈 退栈 7-2进入操作数栈 11 12 13 14 15 16 17 7 4 - 7 4 - / 7 4 2 - / 7 7 2 - - - 5 ⑸算术表达式除了简单求值外,还会涉及到算术表达 式的两种表示方法:即中缀表示法和后缀表示法。 中缀表示法:如日常的算术表达式 后缀表示法:把运算符放在两个操作数的后面 例如,对于下列各中缀表达式: (1)?????? 3/5+8 (2)?????? 18-9*(4+3) (3)?????? (25+x)*(a*(a+b)+b) 对应的后缀表达式为: (1)3 5 / 8 + (2)18 9 4 3 + * - (3)25 x + a a b + * b + * 2.中缀表达式变成等价的后缀表达式: ⑴表达式中操作数次序不变,运算符次序发生变化, 同时去掉了圆括号。 ⑵转换规则是:设立一个栈,存放运算符,首先栈为空,编译程序 从左到右扫描中缀表达式: ①若遇到操作数,直接输出,并输出一个空格作为两个操作数的 分隔符 ②若遇到运算符,则必须与栈顶比较: a.运算符级别比栈顶级别高则进栈,否则退出栈顶元素并输出, 然后输出一个空格作分隔符; b.若遇到左括号,进栈; c.若遇到右括号,则一直退栈输出,直到退到左括号止。 d.当栈变成空时,输出的结果即为后缀表达式。 将中缀表达式(1+2)*((8-2)/(7-4))变成等价的后缀表达式。 ? 现在用栈来实现该运算,栈的变化及输出结果如 下 步骤 栈中元素 输出结果 说明 1 ( ? (进栈 2 ( 1 输出1 3 ( + 1 +进栈 4 ( + 1 2 输出2 5 ? 1 2 + +退栈输出,退栈到(止 6 * 1 2 + *进栈 7 * ( 1 2 + (进栈 8 * ( ( 1 2 + (进栈 9 * ( ( 1 2 + 8 输出8 10 * ( ( - 1 2 + 8 - 进栈 11 * ( ( - 1 2 + 8 2 输出2 12 * ( 1 2 + 8 2 - -退栈输出,退栈到(止 13 * ( / 1 2 + 8 2 - / 进栈 14 * ( / ( 1 2 + 8 2 - ( 进栈 15 * ( / ( 1 2 + 8 2 - 7 输出7 16 * ( / ( - 1 2 + 8 2 - 7 - 进栈 17 * ( / ( - 1 2 + 8 2 - 7 4 输出4 18 * ( / 1 2 + 8 2 - 7 4 - -退栈输出,退栈到(止 19 * 1 2 + 8 2 - 7 4 - / /退栈输出,退栈到(止 20 ? 1 2 + 8 2 - 7 4 - / * *退栈并输出 步骤 栈中元素 输出结果 说明 3.后缀表达式的求值 将中缀表达式转换成等价的后缀表达式后,求值时,不需要再考虑运算符的优先级,只需从左到右扫描一遍后缀表达式即可。 ⑴步骤为:设置一个栈,开始时,栈为空, ⑵从左到右扫描后缀表达式,若遇操作数,则进栈; 若遇运算符,则从栈中退出两个元素,先退出的放 到运算符的右边,后退出的放到运算符左边 ⑶运算后的结果再进栈,直到后缀表达式扫描完毕。⑷栈中仅有一个元素,即为运算的结果。 例,求后缀表达式:1 2 + 8 2 - 7 4 - / *的值, 栈的变化情如下: 步骤 栈中元素 说明 1 1 1进栈 2 1 2 2进栈 3 ? 遇+号退栈2和1 4 3 1+2=3的结果3进栈 5 3 8 8进栈 6 3 8 2 2进栈 7 3 遇-号退栈2和8 8 3 6 8-2=6的结果6进栈 9 3 6 7 7进栈 10 3 6 7 4 4进栈 步骤 栈中元素 说明 11 3 6 遇-号退栈4和7 12 3 6 3 7-4=3的结果3进栈 13 3 遇/号退栈3和6 14 3

文档评论(0)

shuwkb + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档