二叉树的几种遍历方法

二叉树的几种遍历方法

前言
二叉树有三条搜索路径:分别是先上后下、先左后右的按层次遍历先左子树后右子树的遍历先右子树后左子树的遍历;按层次遍历比较简单,在此不做介绍,后两种遍历操作类似,在此我们只介绍先左子树后右子树的遍历。

1、根据二叉树的递归定义,我们知道二叉树由根结点和左右子树构成,确定了先遍历左子树再遍历右子树之后,根据根结点在遍历中的次序分为:先序遍历(根结点在左右子树之前访问);中序遍历(根结点在左右子树中间访问);后序遍历(根结点在左右子树之后访问)

2、如下所示的二叉树,我们为它加上了路径,把二叉树结点的遍历看作快递小哥给每个结点位置的住户送快递,保证每个结点只送一次快递。将每个结点看作有三条路径,快递小哥最终要将每个结点的三条路都走一遍,因此,快递小哥会碰到每个结点位置的住户三次,按照是第一次路过就送,还是第二次路过再送,还是第三次路过再送,分别得到先序,中序,后序的遍历结果。
二叉树的几种遍历方法
先序遍历:ABCDEFGHI
中序遍历:BDCAEHGIF
后序遍历:DCBHIGFEA

总结:二叉树的定义本身就是一个递归定义,因此其遍历也是递归遍历