数据结构 根据遍历画出树 在线等

二叉树T的中序遍历序列和层次遍历序列分别是BAFDGCE和ABCDEFG,

试画出该二叉树

具体是怎么做出来的?

1) 根据层次遍历ABCDEFG A应该在第一层,但BCD等其他不确定。
2) 看中序遍历 BAFDGCE,先左,再中,再右,可确定 B是左子树且唯一,A是根其他是右子树
3) 再看层次遍历ABCDEFG,AB确定,那C应该是右子树,再根据中序遍历确定C的子树。

根据层次遍历可以知道根节点是a
根据中序看出,a肯定有左右孩子,因为如果只有左孩子,那么a应该在最后
所以bc是第二层
同样的道理,b没有左右孩子(因为中序b前面没有了,b后面就是a了)c有左右孩子
所以下一层有2个,de,最后看出fg是d的孩子

画出来就是

        a
 b        c
        d    e 
            f   g