• / 10
  • 下载费用:10 金币  

栈表达式应用.ppt

关 键 词:
栈表达式应用.ppt
资源描述:
3G--嵌入式开发,C数据结构(栈),蜚声腾茂教育科技,栈应用,数制的转换 应用栈对表达式求值 迷宫求解,数制转换-先进后出,例如:将十进制117转换成二进制数。N N/2 N%2117 58 1 (b0)58 29 0 (b1)29 14 1 (b2)14 7 0 (b3)7 3 1 (b4)3 1 1 (b5)1 0 1 (b6)所以,N=(117)10=(1110101)2,表达式求值,二元运算符的表达式定义: 表达式: (操作数)+(运算符)+(操作数) 操作数: 简单变量||表达式 在计算机中,表达式可以有三种不同的标识方法,根据运算符所在的不同位置命名 前缀表达式 中缀表达式 后缀表达式,例子:a*b+(c-d/e)*f,前缀表达式+*ab*-c /def 中缀表达式a*b+c-d/e*f 后缀表达式ab*cde/-f*+ 结论: 操作数之间的相对位置不变 运算符的相对次序不同 中缀式丢掉了括号信息,致使运算的次序不确定,前缀式的运算规则: 连续出现的两个操作数和在它们之前且仅靠它们的运算符构成一个最小表达式 后缀式的运算规则: 运算符在式中出现的顺序恰为表达式的的运算顺序; 每个运算符和它之前出现且紧靠它的两个操作数构成一个最小表达式; 后缀式,然后求值,方便,如何从后缀式求值?,先找运算符 再找操作数 后缀表达式ab*cde/-f*+ 从左到右的扫描表达式,用栈给大家画算 法思路,操作数入栈,运算符出栈计算,如何从原表达式求得后缀式?,分析原表达式和后缀表达式中的运算符 a*b+c-d/e*f ab*cde/-f*+ 根据数学运算规则---栈 每个运算符的运算次序要由它之后的一个运算符来定,在后缀是中,优先级高的运算符领先于优先级低的运算符,用栈实现求出表达式的后缀式,从原表达式求得后缀式的规律,设立操作数栈 设表达式的结束符为‘#’,预设运算符的栈底为‘#’ 若当前字符是操作数,则直接发送给后缀式 若当前运算符高于栈顶运算符则进栈,否则退出栈顶运算符,发送给后缀式 ‘(’对它前后的运算符起隔离作用,‘)’可视为自相应左括号开始的表达式的结束符,
展开阅读全文
  微传网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
0条评论

还可以输入200字符

暂无评论,赶快抢占沙发吧。

关于本文
本文标题:栈表达式应用.ppt
链接地址:https://www.weizhuannet.com/p-7357239.html
微传网是一个办公文档、学习资料下载的在线文档分享平台!

微传网博客

网站资源均来自网络,如有侵权,请联系客服删除!

 网站客服QQ:80879498  会员QQ群:727456886

copyright@ 2018-2028 微传网络工作室版权所有

     经营许可证编号:冀ICP备18006529号-1 ,公安局备案号:13028102000124

收起
展开