已知某二叉树的先序遍历序列为ABDCEFG、中序遍历序列为BDACFGE,则该二叉树的层数为()

先序:根左右
中序:左根右
分析:根据先序遍历序列可以找出整棵树及各个子树的根结点,然后根据中序序列划分左、右子树中的结点。
简单理解:先排列,后划分。(中序用于划分左、右子树,即便换成已知后序、中序的也一样)

先序:{A}BDCEFG 中序:BD{A}CFGE

     A        //由先序可知A为根;由中序可知,BD在A的左子树,CFGE在A的右子树
    / \
 {BD} {CFGE}

左子树:先序:{B}D 中序{B}D

   A
  / 
 B          //由先序可知B为根;由中序可知左子树为空,D在B的右子树
  \
   D

右子树:先序:{C}FGE 中序:{C}FGE

   A
    \
     C        //由先序可知C为根;由中序可知左子树为空,FGE在C的右子树
      \
     {FGE}

C的右子树继续拆分:先序:{E}FG 中序:FG{E}

   E    //由先序可知E为根;由中序可知FG在E的左子树
  /
{FG}
(F)    //由先序可知F为根;由中序可知G在F的右子树
   \
    G

故此总二叉树如下:

   A
  / \
 B   C
  \   \
   D   E
      /
     F
      \
       G