有序树 有序树T1→二叉树T2 T1的前序就是T2的前序,T1的后序是T2的中序

7.2.1 遍历的概念

  树的遍历是树的一种重要的运算。所谓遍历是指对树中所有结点的系统的访问,即按某种次序对树中每个结点访问一次且仅访问一次。

7.2.2 常用的3种最重要的遍历方式

  它们分别称为前序遍历、中序遍历和后序遍历。以这3种方式遍历一棵树时,若按访问结点的先后次序将结点名排列起来,就分别得到树中所有结点名的前序列表,中序列表和后序列表。相应的结点次序就分别称为结点的前序、中序和后序。

7.2.3 有序树T3种遍历方式的递归定义

  如果T是一棵空树,那么对T进行前序遍历、中序遍历和后序遍历都是空操作,得到的列表都是空表。

  如果T是一棵单结点树,那么对T进行前序遍历、中序遍历和后序遍历都只访问这个单结点,得到的相应的列表仅含此结点。否则,设T如图所示,那么

(1)T进行前序遍历是先访问树根n,然后依次前序遍历T1,T2,…,Tk

(2)T进行中序遍历是先中序遍历T1,然后访问树根n,接着依次对T2,T3,…,Tk 进行中序遍历。

(3)T进行后序遍历是先依次对T1,T2,   …,Tk进行后序遍历,最后访问树根n

7.2.4 举例

  上图有序树的

前序列表:A B E F  I J C D G H;

中序列表:E B I F J A C G D H;

后序列表:E I J F  B  C  G  H  D  A。

posted @ 2009-06-11 13:49  南守拥  阅读(789)  评论(0编辑  收藏  举报