




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、【例】逆波兰表达式 rpn(Reverse Polish Notation)逆波兰表达式是一种把运算符后置的算术表达式,逆波兰表达式又叫做后缀表达式。 逆波兰表达式的优点是运算符之间不必有优先级关系,也不必用括号改变运算顺序。逆波兰表达式是一种很有用的表达式,它将复杂表达式转换为可以依靠简单的操作得到计算结果的表达式。例如:正常表达式逆波兰表达式 本题求解逆波兰表达式的值,其中运算符只包括4个,+加、-减、*乘、/除。输入为一行,其中运算符和运算数之间都有空格分隔,运算数是1位正整数输出为一行,即表达式的值。2 3 + 8 7 + *75后缀表达式的求值需要一个堆栈,用此栈来存储后缀表达式中的
2、操作数,计算过程中的中间结果以及最后结果。基本思路:扫描后缀算术表达式字符串,每次从字符串中读取一个字符,读到空格不做任何处理,若读到运算符,则表明它的两个操作数已经在栈中,否则读到的字符必为数字,应把它转换为一个正整数存入一个变量中,然后把计算或转换得到的正整数(即该变量的值)压入栈中,依次扫描每个字符并进行上述处理,直到遇到结束符,表明后缀表达式计算完成,最终结果保存在栈中,并且栈中只有这一个值。 function rpn()Begin read(ch) while ( ch n) do begin case (ch) of case + : r pop()+pop() push(r) c
3、ase - : r pop() r pop()-r push(r) case * : r pop()*pop() push(r) case / : r pop() r pop()/r push(r) end if (ch=0 and ch=9) then push(ch-0) read(ch) endend*怎么计算前缀表达式例如:正常表达式前缀逆波兰表达式前缀表达式的递归定义,就像正常表达式可以递归定义一样。 rpnrpn / rpnrpn *rpnrpn -rpnrpn )(常量crpn可以考虑用递归函数来求解。function rpn() begin read(ch) case ch of case + : return rpn() + rpn() case - : return rpn() - rpn() case * : return rpn() * rpn() case / : return rpn() / r
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 5 2023年汽车文化研究分析报告
- 2025年合肥建投资本管理有限公司社会招聘10人笔试参考题库附带答案详解
- 人教版高中地理选择性必修1第四章第二节洋流课件
- 滑坡地质灾害治理工程项目初步设计
- 刹车操作教学设计
- “双碳”背景下碳信息披露的财务效应研究
- 2024年泉州市采购集团有限责任公司招聘劳务派遣人员1人笔试参考题库附带答案详解
- 外科手术护理相关知识
- 电子支付安全培训
- 2025至2030年中国锡黄铜棒数据监测研究报告
- 软硬结合板的设计制作与品质要求课件
- 中学葫芦丝校本教材
- SCADA系统基本功能检测记录
- 民营医院组织架构图示
- 慢性心功能不全护理查房
- 初中 初二 物理 凸透镜成像规律实验(习题课) 教学设计
- 消防维保方案 (详细完整版)
- 小学综合实践六年级上册第2单元《主题活动二:设计一周营养食谱》教案
- 学校教育信息化管理规章制度汇编
- 机械设备供货安装及售后服务方案(通用)
- 社区矫正人员工作手册
评论
0/150
提交评论