2个回答
展开全部
24+8*3/4*10-7
为了不改变原来的运算次序,加上括号后为:
[(24+8)*3]/[4*(10-7)]
后序遍历是先遍历左子树,后遍历右子树,最后才是根,所以,紧邻每个运算符号前的两个数字必为该运算符的左右操作数,也就是该根的左右子树
+号前的24 8分别是它的左右子树,-号前的10 7分别是它的左右子树
所以,原表达式初步可变为:
(24 8 +) 3 * 4 (10 7 -) * /
现在第一个*号前的操作数可以看出是(24 8 +)3
第二个*号前的操作数为4(10 7 -)
两个括号内的部分可以确定分别组成一棵子树,所以,进一步可变为:
( (24 8 +) 3 *) (4 (10 7 -) *) /
左子树 右子树 根
由此可确定该二叉树,然后中序遍历即可
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询