根据先序和中序序列求二叉树

来源:互联网 发布:人工智能手机芯片 编辑:程序博客网 时间:2024/05/22 02:11

根据先序和中序序列求二叉树

$1、题目

已知一棵二叉树的先序遍历序列和中序遍历序列分别为ABDGHCEFI和GDHBAECIF,请画出这棵二叉树,然后给出该树的后序遍历序列。
- 先序遍历:ABDGHCEFI
- 中序遍历:GDHBAECIF

$2、分析

由前序和后序分析子树

  • 由先序:A|BDGHCEFI
  • 由中序:GDHB|A|ECIF
  • 知:A为根节点,A左子树为GDHB,右子树为 ECIF

  • 由先序:BDGH>B|DGH
  • 由中序:GDHB>GDH|B
  • 知:B有左子树,无右子树,左子树为GDH

  • 由先序:DGH>D|GH
  • 由中序:GDH>G|D|H
  • 知:D有左子树:G,右子树:H 如图:分析1

  • 由上可得,A的左子树:分析2

  • 由先序:CEFI>C|EFI
  • 由中序:ECIF>E|C|IF
  • 知:C有左子树,为:E,有右子树:IF

  • 由先序:FI>F|I
  • 由中序:IF>I|F分析3

$3、结果

结果

$4、总结

4.1 根据先序遍历的顺序,查找子树

4.2 根据中序遍历,查找左子树,和右子树

4.3 根据后续遍历,查找最左节点

阅读全文
0 0
原创粉丝点击