1. 程式人生 > >《大話資料結構8》—— “ 二叉樹的遍歷”

《大話資料結構8》—— “ 二叉樹的遍歷”

 


 二叉樹的遍歷


●  是指從根節點出發, 按照某種次序依次訪問二叉樹中所有結點, 使得每個結點被訪問一次且僅被訪問一次。

●  二叉樹的遍歷方式很多,如果我們限制了從左到右的習慣方式,那麼主要就分為四種:

(1 )前序遍歷

規則是: 若二叉樹為空,則空操作返回。 否則先訪問根結點——然後前序遍歷左子樹; 當無法移動時,—— 在前序遍歷右子樹。

(2)中序遍歷

規則是: 若二叉樹為空,則空操作返回。中序遍歷根結點的左子樹,然後訪問根結點,最後中序遍歷右子樹。

 

(3)中序遍歷

規則是: 若二叉樹為空,則空操作返回。否則就從左到右先葉子後結點的方式遍歷訪問左右子樹,最後是訪問根結點。

 

(4)層序遍歷

規則是: 若二叉樹為空,則空操作返回。 否則從樹的第一層,也就是根結點開始訪問, 從上而下逐層遍歷,在同一層中, 按從左到右的順序對結點逐個訪問。如圖所示,遍歷的順序是: ABCDEFGHI

二叉樹遍歷的兩個性質:

已知前序遍歷和中序遍歷序列, 可以唯一確定一棵二叉樹。

已知後序遍歷序列和中序遍歷序列, 可以唯一確定一棵二叉樹。

注意: 已知前序遍歷和後序遍歷序列,是不能確定一棵二叉樹的。