中间语言树表示树形表示是三元式的翻版
在树的表示中,树叶均为运算对象,即常量或变量,其他结点表示运算符
表达式的树形表示很容易实现:简单变量或常量的树就是该变量或常量自身,如果表达式e1和e2的树分别为T1和T2,那么e1+e2,e1* e2,-e的树分别为图1所示,表达式a* b+c* d树形表示为图2所示,后序遍历上述二叉树便可得到该表达式的逆波兰表示ab*cd*+
我们很容易把三元式表示成树形表示
每个三元式(OP,ARG1,ARG2)对应一棵二叉子树,OP为子树的根,ARG1和ARG2为子树的两棵子树,它们或为末端结点(终结符)或为下代子树的根,最后一个三元式③对应树的根
下图3给出了三元式和树形表示的对应关系
一般而言,双目运算对应二叉子树,多目运算对应多叉子树
但是,为了便于安排存储空间,一棵多叉子树可以通过引进新结点而表示成一棵二叉子树
以上内容由大学时代综合整理自互联网,实际情况请以官方资料为准。