二叉树的遍历顺序有:前向遍历、中序遍历、后续遍历、按层遍历四种。
前向遍历:先根节点再左子树后右子树。
中序遍历:先左子树再根节点后右子树。(投影法快速实现遍历)。
后续遍历:先左子树再右子树后根节点
按层遍历:ABECDFG。
二、二叉树的重构。
已知一棵二叉树的先序遍历和中序遍历序列分别为:
先序: A B C I D E F H G
中序:C I B E D A H F G
先由先序遍历得知A为根,再由中序得知CIBED为左子树。再由先序得到各节点位置。
总结:先由先序遍历或者后续遍历确定根节点,再由中序遍历确定根节点的左右分支。然后对于左分支可以看做一个二叉子树,同样由左子树在先序遍历中的位置可以判断左子树的下一个根节点,再对照中序遍历即可。这个思想和排序中快速排序法的思想相似。