zoukankan      html  css  js  c++  java
  • 手工转换中缀式与前、后缀式

    之所以要手工推导,当然是为了考试。额。

    编程实现请自行搜索,有的。下述内容因为我没搜到,所以写下来,一则备忘,二则也帮助准备考试的童鞋节约点时间。

    闲言少叙,且听正文:

    【1】求值:

    1.1 中缀式求值:(不用说了吧,你懂的)

    1.2 前、后缀式求值:程序求的话,当然是设栈,可是“栈”这玩意是计算机的思维模式,咱们人类要在脑子里维护个栈,那个智商要求是比较高的,以本人比较低的智商来说是相当的困难。所以,曲线救国:把前、后缀式转换成中缀式,中缀式求值参照上面一条。

    【2】转换

      因为通过心算或画图模拟栈的运算都不是很方便,所以总结下述方法。

    1.1 后缀式(前缀式)转中缀式 

    举例:如希望将后缀式  ab*cde/-f*+  转换为中缀式

            

            从左向右查找运算符,找到则将该符号与前面两数结合,循环即可。

    1.2 中缀式转后缀式(前缀式)

    举例:请将中缀式  a * ( b *(c+d/e) - f)  转换为后缀式

          

          

          首先按照运算符的优先级对所有的运算单位加括号,然后,画图将括号内符号移动到相应括号后并去除括号。BTW,这个画法没见别人用过,属于原创范畴,如有雷同,纯属偶然。另外,如果您只有一支黑色铅笔,可以考虑小括号、方括号花括号齐上阵。

    至此,软考这类题目的分应该可以拿下了。

  • 相关阅读:
    Es spring data jpa 修改连接配置
    object转map类型
    记一次项目中yaml文档引发的惨案 (#yaml文档格式#yaml中'-'的作用)
    02-方法重载
    01-数据类型分类
    Centos 7 Sublime 安装 package control
    修改AdminLTE左侧菜单展开延迟
    【Flask】Flask Restful api
    【Flask】Flask常用信号
    【Flask】Flask上下文
  • 原文地址:https://www.cnblogs.com/hsxixi/p/2224869.html
Copyright © 2011-2022 走看看