嗨,我要从二叉树上取四样东西
中缀算术表达式得到并测试:
-4*(-5-2)/(-1*x-(-3))
用x=-1计算表达式,得到并测试:
7个
中缀算术表达式,如if-instead*is+
我试着这么做,但都错了:
-4+(-5-2)/(-1+x)-(-3)
-4+(-5-2)/((-1+x)-(-3))
-4+(-5-2)/(-1+x-(-3))
-4+(-5-2)/(-1+x)-(-3)
-4+(-5-2)/-1+x-(-3)
-4+(-5-2)/((-3)-(-1+x))
-4+(-5-2)/(-3)-(-1+x)
(-5-2)+(-4)/((-1+x)-(-3))
(-5-2)+(-4)/(-1+x-(-3))
(-5-2)+(-4)/(-1+x)-(-3)
(-5-2)+(-4)/-1+x-(-3)
(-5-2)+(-4)/((-3)-(-1+x))
(-5-2)+(-4)/(-3)-(-1+x)
得到后缀的算术表达式,我想应该是这个,但不是,也是错的:
45-2-1x-3号--/-
-4-52--1-3/
我希望你能帮助我。
谢谢
最佳答案
第三个数字在第一行是错误的(记住除法和乘法在加减之前):
(-4 + (-5 - 2)) / ((-1 + x) - -3)
(-4 + -5 - 2) / (-1 + x - -3)
第4个后缀符号(也称为反向波兰符号)可以通过深度优先遍历获得,在访问两个子节点后添加父节点:
-4 -5 2 - * -1 x * -3 - /