推导遍历二叉树

二叉树遍历方法

前序遍历:根节点->左子树->右子树;

中序遍历:左子树->根节点->右子树;

后序遍历:左子树->右子树->根节点;

层序遍历:若树为空,空操作返回,否则从树得第一次(根节点)逐层遍历。

推导遍历结果

已知一颗二叉树得前序遍历是 ABCDEF,中序遍历为 CBAEDF,这颗二叉树得后序遍历结果是多少?

1.前序遍历中第一个是根节点 A,则在中序遍历中 A之前的CB为A的左子树,EDF为右子树;
推导遍历二叉树
2.C、B在前序的顺序为B、C,则B是A的左孩子,C在中序中在前,C是B的孩子,且是左孩子;

推导遍历二叉树

3.E、D、F在前序DEF,则D是A的右孩子,后序为EDF,E是D的左孩子,F是D的右孩子;

推导遍历二叉树
复原二叉树后,其后序遍历结果:CBEFDA

A是跟节点,其在后序中必定为最后一个;
C是B的左孩子,B是A的左孩子,则后序中为CB;
D是A的右孩子,E、F分别是D的左右孩子,则后序中为EFD。

二叉树的额中序序列是ABCDEFG,后序序列是BDCAFGE,求前序序列。

1.后序中E为根节点,则前序第一个为E;

2.ABCD为根节点的左树,FG为根节点的右树。后序BDCA,则A是E的左孩子,目前前序序列为EA;

3.中序序列ABCD,A在前,则A没有左孩子,BCD是A的右树,后序BDCA,则C是A的右孩子,前序EAC;

4.中序BCD,则BD分别是C的左右孩子,前序EACBD;

5.后序FGE,则G是E的右孩子,F是G的孩子,中序FG,F在前,F为G的左孩子,前序EACBDGF
(F是左、右孩子不影响前序遍历顺序)

二叉树遍历性质:

推导遍历二叉树

相关文章:

  • 2021-11-27
猜你喜欢
  • 2022-12-23
  • 2022-02-16
  • 2022-12-23
  • 2022-01-24
  • 2022-12-23
  • 2021-08-19
  • 2021-05-14
相关资源
相似解决方案