当前位置: 首页 > news >正文

四则运算表达式分解,前中后缀表达式(栈的应用)

前/中/后缀表达式的转换(首先需要明白三者之间的转换)   

   自然表达式转换为前/中/后缀表达式,其实是很简单的。首先将自然表达式按照优先级顺序,构造出与表达式相对应的二叉树,然后对二叉树进行前/中/后缀遍历,即得到前/中/后缀表达式
 
    举例说明将自然表达式转换成二叉树:
 
    a×(b+c)-d
 
    ① 根据表达式的优先级顺序,首先计算(b+c),形成二叉树
    tree1.JPG
   
   ②然后是a×(b+c),在写时注意左右的位置关系
    tree2.JPG
 
   ③最后在右边加上-d
    tree3.JPG
 
 
  然后最这个构造好的二叉树进行遍历,三种遍历的顺序分别是这样的:
 
   ① 前序遍历:根-左-右
   ② 中序遍历:左-根-右
   ③ 后序遍历:左-右-根
 
    所以还是以刚才的这个例子,在最终二叉树的基础上可以得出:
 
    前缀表达式:-*a+bcd
    中缀表达式:a*b+c-d
    后缀表达式:abc+*d-

转载于:https://www.cnblogs.com/Ph-one/p/10060746.html

相关文章:

  • 嵌入式 Linux 对内存的直接读写(devmem)
  • C语言三个结束符:EOF ‘\0’ '\n'
  • Ymodem协议(参考STM32)
  • android uboot中的mmc命令
  • stm32最简单的实现BootLoader
  • 变参标准函数的重新封装,如printf
  • 导数与梯度
  • linux /Android 平台下使用 i2c-tools
  • 在android下使用i2c tools
  • ubuntu查看文件和文件夹大小
  • matlab的三维绘图和四维绘图
  • Matlab绘制三维曲面(以二维高斯函数为例)
  • VSCode 预览 .md 文件
  • 右侧添加悬浮打赏功能
  • Git错误non-fast-forward后的冲突解决
  • 【挥舞JS】JS实现继承,封装一个extends方法
  • 【刷算法】从上往下打印二叉树
  • 〔开发系列〕一次关于小程序开发的深度总结
  • Android Volley源码解析
  • avalon2.2的VM生成过程
  • ECS应用管理最佳实践
  • IDEA 插件开发入门教程
  • IDEA常用插件整理
  • java多线程
  • java架构面试锦集:开源框架+并发+数据结构+大企必备面试题
  • LeetCode18.四数之和 JavaScript
  • leetcode378. Kth Smallest Element in a Sorted Matrix
  • Mysql优化
  • node和express搭建代理服务器(源码)
  • open-falcon 开发笔记(一):从零开始搭建虚拟服务器和监测环境
  • QQ浏览器x5内核的兼容性问题
  • spring + angular 实现导出excel
  • 闭包,sync使用细节
  • 前言-如何学习区块链
  • 怎么将电脑中的声音录制成WAV格式
  • 策略 : 一文教你成为人工智能(AI)领域专家
  • 函数计算新功能-----支持C#函数
  • ​Python 3 新特性:类型注解
  • # 学号 2017-2018-20172309 《程序设计与数据结构》实验三报告
  • #pragam once 和 #ifndef 预编译头
  • #stm32整理(一)flash读写
  • $ is not function   和JQUERY 命名 冲突的解说 Jquer问题 (
  • $.ajax中的eval及dataType
  • (DFS + 剪枝)【洛谷P1731】 [NOI1999] 生日蛋糕
  • (HAL)STM32F103C6T8——软件模拟I2C驱动0.96寸OLED屏幕
  • (ISPRS,2023)深度语义-视觉对齐用于zero-shot遥感图像场景分类
  • (附源码)计算机毕业设计ssm基于B_S的汽车售后服务管理系统
  • (过滤器)Filter和(监听器)listener
  • (六)软件测试分工
  • (每日持续更新)jdk api之StringBufferInputStream基础、应用、实战
  • (十八)devops持续集成开发——使用docker安装部署jenkins流水线服务
  • (转)Sublime Text3配置Lua运行环境
  • (转)详解PHP处理密码的几种方式
  • ***详解账号泄露:全球约1亿用户已泄露
  • .NET MVC第三章、三种传值方式