0


表达式a/ (b+c)*d对应的后缀表达式是?

第一步,把每一步运算都加一个括号:
((a/ (b+c))*d)

第二步,把括号内的运算符移到括号外(右侧括号外):
((a (bc)+)/d)*

第三步,把所有括号去掉:
abc+/d*

所得即为后缀表达式。

例:表达式 a*(b+c)-d 的后缀表达式?
① ((a*(b+c))-d)
② ((a(bc)+)*d)-
③ abc+*d-

另查自百度知道:
表达式 a*(b+c)-d是中缀表达式,转化成二叉树后,它是中序遍历的结果
二叉树如下图:
(-)___
/______
(*)(d)____
/________
(a)(+)________
/____
(b)(c)____
后缀表达式,就是后序遍历该二叉树,所得到的序列,也就是:abc+*d-
前缀表达式,就是前序遍历二叉树,所得到的序列,是:-*a+bcd

标签: 数据结构

本文转载自: https://blog.csdn.net/Arron475/article/details/117969659
版权归原作者 Arron475 所有, 如有侵权,请联系我们删除。

“表达式a/ (b+c)*d对应的后缀表达式是?”的评论:

还没有评论