前缀后缀表达式

阅读量: 82 编辑

前缀表达式:是指将运算符写在前面,操作数写在后面的不包含括号的表达式,而且为了纪念其发明者波兰数学家JanLukasiewicz,所以前缀表达式也叫做“波兰表达式”。

后缀表达式:与前缀相反,是指运算符写在操作数后面的不包含括号的算术表达式,也叫做逆波兰表达式。

中缀表达式:就是常用的将操作符放在操作数中间的算术表达式。

一、和二叉树的关系

  • 前缀表达式对应于二叉树的前序遍历

  • 中缀表达式对应于二叉树的中序遍历

  • 后缀表达式对应于二叉树的后序遍历

如中缀(中序遍历)表达式:(a+b)*c-(d+e)

1581851181318176.png

前缀(先序遍历):-*+abc+de

后缀(后序遍历):ab+c*de+-

二、小括号法

表达式:(a+b)*c-(d+e)

  • 首先将中缀表达式的所有运算加括号:(((a+b)*c)-(d+e))

  • 运算变量顺序不变,将运算符号放到括号外面,前缀就放前面、后缀就放后面

  • 去掉括号后,前缀:-*+abc+de,后缀:ab+c*de+-

平时考试做题的时候,推荐这种方法

爱码岛编程公众号
试卷资料
爱码岛编程小程序
在线刷题
苏ICP备13052010号
©2023 南京匠成信息科技有限公司