给定二叉树先序和中序画出二叉树

给定二叉树先序和中序

先序数列:ABDGHCEFI
中序数列:GDHBAECIF

  1. 先序序列的第一个值为根节点:A为根节点
  2. 再到中序数列中找到根节点,以根节点A为界分为左右两部分,左:GDHB、右:ECIF
  3. 在先序序列找到与中序数列左右部分对应的序列部分,左:BDGH、右:CEFI,可得到左边结点为B,右边结点为C给定二叉树先序和中序画出二叉树
  4. 分别对左子树和右子树进行上述操作,左子树(先序:CEFI,中序:ECFI)以C为界限分为 左:E、右:IF,因为先序序列F在I前所以F在I上一层,因为中序数列I在F前面,所以I在左分支;右子树(先序:BDGH,中序:GDHB)以B为界限分为左:GDH,因为先序中D在第一个,所以D为第一个结点针对(先序:DGH,中序:GDH)重复上述方法可得:给定二叉树先序和中序画出二叉树