博客
关于我
中缀表达式与后缀表达式
阅读量:367 次
发布时间:2019-03-05

本文共 800 字,大约阅读时间需要 2 分钟。

中缀表达式转换为后缀表达式的步骤详解

中缀表达式是我们日常使用最多的运算表达方式。例如,1+32这样的表达式,运算符“+”位于两个运算对象之间。然而,这种表达方式在计算机处理时存在一定的问题,因为运算顺序的确定可能会影响最终结果,且不容易找到规律。

为了解决这些问题,计算机科学家将中缀表达式转换为后缀表达式。后缀表达式的特点是将运算符置于其运算对象之后,例如123+。这种表达方式更便于计算机处理,因为它不需要处理运算顺序的问题,直接可以按照顺序进行计算。

下面,我们将详细介绍如何将中缀表达式转换为后缀表达式。


转换步骤

将中缀表达式转换为后缀表达式的过程分为三个主要步骤:

第一步:为每一个运算符添加括号

每个运算符需要用一对括号将其“包围”,确保运算顺序的明确性。例如,原表达式1+32的转换结果为1+(32)。

第二步:将运算符移动到括号外

从内向外依次移动每个运算符,将其放置到对应括号的后面。例如,在1+(32)这个表达式中,“+”运算符会被移动到括号外的位置。

第三步:去掉所有括号

最后,将所有括号去掉,得到最终的后缀表达式1 2 + 3。


后缀表达式的计算过程

将中缀表达式转换为后缀表达式后,计算过程变得更加简单。后缀表达式的计算方法如下:

  • 从左到右依次扫描表达式中的字符。
  • 如果是数字,将其直接输入到一个栈(即数栈)中。
  • 如果是运算符,则取栈顶的两个数字,执行相应的运算操作,将结果重新输入栈中。
  • 直到遇到终止符(通常是空格或特殊符号),结束计算。
  • 例如,后缀表达式123+的计算过程如下:

  • 输入1,栈变为[1]。
  • 输入2,栈变为[1,2]。
  • 输入+,取出2和1,计算1+2=3,栈变为[3]。
  • 遇到终止符,结束。最终结果为3。

  • 通过以上步骤,可以清晰地看出中缀表达式转换为后缀表达式的过程及其背后的逻辑。这种转换方法不仅简化了计算过程,还为计算机程序的实现提供了清晰的指导。

    转载地址:http://cygg.baihongyu.com/

    你可能感兴趣的文章
    2021-4-28【PTA】【L2-1 包装机 (25 分)】
    查看>>
    Arduino mega2560+MPU6050利用加速度值控制舵机
    查看>>
    紫书——蛇形填数
    查看>>
    A Guide to Node.js Logging
    查看>>
    webwxbatchgetcontact一个神奇的接口
    查看>>
    Edge浏览器:你的的内核我的芯
    查看>>
    【考研英语-基础-简单句】简单句的核心变化_谓语情态
    查看>>
    Jetson AGX Xavier硬件自启动
    查看>>
    眼睛跟随鼠标转动的小黄人 html+css+js
    查看>>
    统计字符数
    查看>>
    JS 数组的 every()、some() 、filter()、findIndex() 、find()、map()方法
    查看>>
    JS数据类型的判断
    查看>>
    实现一个简易Vue(三)Compiler
    查看>>
    仿小米商城(上)
    查看>>
    【30】kotlin 闭包
    查看>>
    自动安装服务2
    查看>>
    js的各种数据类型判断(in、hasOwnProperty)
    查看>>
    严格模式、混杂模式与怪异模式
    查看>>
    HTML 和 CSS 简单实现注册页面
    查看>>
    (SpringMVC)springMVC.xml 和 web.xml
    查看>>