sherrylima
2016-02-03 13:04
采纳率: 71.4%
浏览 2.0k
已采纳

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

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

试画出该二叉树

具体是怎么做出来的?

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

3条回答 默认 最新

  • zy__ 2016-02-03 14:51
    已采纳

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

    打赏 评论
  • threenewbee 2016-02-03 13:19

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

    画出来就是

            a
     b        c
            d    e 
                f   g
    
    打赏 评论
  • mxl930510 2016-02-05 02:38

    1.根据层次遍历ABCDEFG A根节点。
    2.根据中序遍历 BAFDGCE,左中右的顺序,可确定 B是A的左子树
    3.再看层次遍历ABCDEFG,由于AB以确定,按照层次遍历中左右顺序,C为A的右子树。
    4.再根据中序遍历,确定E为C的右子树,再看层次确定出C的左子树

    打赏 评论

相关推荐 更多相似问题