表达式,转换和计算,用C语言描述--Part3
- 作者:zhaozj
- 发表时间:2020-12-23 10:57
- 来源:未知
表达式,转换和计算,用C语言描述--Part3(关于表达式的所有你应该知道的东西)
其余转换
所有剩余的转换都可以轻易地用二分表达式树来完成。事实上,上面的两种转换,也即中缀->前缀和中缀>后缀,也能用二分树来做,但是技巧性太强,而用栈来完成就容易得多。现在我们继续讲解,首先对二分表达式树下一定义。
二分表达式树
表达式树是严格的二分树,叶节点存放操作数,非叶节点存放运算符,根节点存放用于计算左子树和右子树计算结果的运算符。一旦我们得到了某一特定表达式的树,将它转换成各种不同的表示形式(中缀,前缀和后缀)以及计算其值都只需要遍历这棵树就可以了。下图展示了前面的表达式