原理:
二叉树的先序序列遍历过程是:根左右;
中序序列遍历过程是:左根右;
后序序列遍历过程是:左右根;
知道二叉树的先序序列可以知道根节点就是序列的第一个结点;在知道根节点的情况下知道二叉树的中序序列就可以知道左右树;知道后序排列就可以知道根节点就是序列最后一个节点。
可以重建二叉树的两种情况
先序序列+后序序列无法重建二叉树;
中序序列+后续序列/先序序列可以重建二叉树。
例.已知某二叉树的后序遍历序列是DABEC,中序遍历序列是DEBAC,则其先序遍历的结点访问顺序是( )。
A.ACBED B.DECAB C.DEABC D.CEDBA
①由后序序列DABEC可以知道唯一的根节点是C;
②由中序序列DEABC可以知道DEAB是C的左子树,没有右子树;
③由后序序列DEAB可以知道C的右子树的根节点是E;
④由中序序列DEAB可以知道E的左子树是DEA;
⑤由此类推,即可重建二叉树。