表达式(a-b)*(c+d)的后缀式(逆波兰式)是()

请先 登录 后评论

1 个回答

亚里士德
擅长:互联网

知识点:编译程序基本原理

位于章节2.2.2。第七小点,中间代码生成。

---

这个题考察的很简单,都还没考到二叉树,就是考察书上现成的东西。

书上说的也很简单。稍微看下书上的例子就没有做不出来的。

原话:“这种表示方式把运算符写布运算对象的后面,例如,把a+b写成ab+,所以也称为后缀式”。

所以a-b写成ab-,c+d写成cd+(转换顺序还是要按数学的基本计算顺序来的),再把俩括号分别看成整体,所以乘号方法最后去,就转换成了ab-cd+*

---

另外经常考的是二叉树的后根遍历,那种题目就根据二叉树的后根遍历结果,和逆波兰式相同就OK了。课本上本章节也有依据,就是表达式的树形表示,不过没有说明是二叉树后根遍历。

请先 登录 后评论