济南大学信息科学与工程学院数据结构课件 第三章.ppt

济南大学信息科学与工程学院数据结构课件 第三章.ppt

  1. 1、本文档共69页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
关于中缀表达式与后缀表达式转换 第一步:将中缀表达式所有的子表达式按计算规则用嵌套括号括起来; 第二步:顺序将每对括号中的运算符移到相应括号后面; 第三步:删除所有括号。 例: a+b*( c-d )–e/f 中缀表达式 第一步: ((a+(b*( c-d )))–(e/f )) 第二步: ((a(b( c d )-)*) +(e f )/) – 第三步: abcd - * + e f / – 后缀表达式 5. 栈的应用——表达式计算 应用后缀表示计算表达式的值 从左向右顺序地扫描表达式,并用一个栈 暂存扫描到的操作数或计算结果。 在后缀表达式的计算顺序中已隐含了加括号 的优先次序,括号在后缀表达式中不出现。 计算例 A B C D - * + E F / - R1 R2 R3 R4 R5 4 + 2 * 3 - 10 / 5 # (中缀表达式) OPND OPTR 当前输入符c # 4 4 + # + + 2 2 * + * * 3 3 - * - 6 + - 10 # - - 10 10 / - / / 5 5 # / # 2 - # 8 # = # return 8 初始,# 进OPTR栈 4 2 3 * + 10 5 / - (后缀表达式) OPND 当前输入符c 4 2 return 8 4 2 3 3 * 2*3 6 + 4+6 10 10 5 10 5 / 10/5 2 - 10-2 8 5. 栈的应用——表达式计算 模拟一个简单的计数器 class Calculator //计数器类的定义 { public: Calculator(int sz):s(sz){} void Run(); private: SeqStackdouble s; bool Get2Operands( double left, double right); void DoOperator(char op); }; 模拟一个简单的计数器 void Calculator::Run() { char ch; double newOperand; while(cinch, ch!=#) { switch(ch) { case +: case -: case *: case /: DoOperator(ch); break; default: cin.putback(ch); cinnewOperand; s.Push(newOperand); } } s.output(); s.MakeEmpty(); } 模拟一个简单的计数器 void Calculator::DoOperator(char op) { double left, right, value; bool result; result=Get2Operands(left,right); if(result== true) switch(op) { case +: value=left+right; s.Push(value); break; case -: value=left-right; s.Push(value); break; case *: value=left*right; s.Push(value); break; case /: if(fabs(right)0.0001) { cout除数为0!\n; s.MakeEmpty(); } else { value=left/right; s.Push(value); } break; } else s.MakeEmpty(); } 模拟一个简单的计数器 bool Calculator::Get2Operands(double left,

您可能关注的文档

文档评论(0)

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

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

1亿VIP精品文档

相关文档