二叉樹遍歷規則

2021-08-19 17:39:53 字數 859 閱讀 8302

今天看了一些關於平和查詢二叉樹的問題,順便也複習了一下二叉樹的遍歷規則,寫一下學習文件。

樹的遍歷順序大體分為三種:前序遍歷(先根遍歷、先序遍歷),中序遍歷(中根遍歷),後序遍歷(後根遍歷)。

如圖所示二叉樹:

前序遍歷:前序遍歷可以記為根左右,若二叉樹為空,則結束返回。

前序遍歷的規則:

(1)訪問根節點

(2)前序遍歷左子樹

(3)前序遍歷右子樹

這裡需要注意:在完成第2,3

步的時候,也是要按照前序遍歷二叉樹的規則完成。

前序遍歷的輸出結果:abdecf

中序遍歷:中序遍歷可以記為左根右,也就是說在二叉樹的遍歷過程中,首先要遍歷二叉樹的左子樹,接著遍歷根節點,最後遍歷右子樹。

同樣,在二叉樹為空的時候,結束返回。

中序遍歷的規則:

(1)中序遍歷左子樹

(2)訪問根節點

(3)中序遍歷右子樹

注意:在完成第1,3

步的時候,要按照中序遍歷的規則來完成。

中序遍歷的輸出結果:dbeafc

後序遍歷:後序遍歷可以記為左右根,也就是說在二叉樹的遍歷過程中,首先按照後序遍歷的規則遍歷左子樹,接著按照後序遍歷的規則遍歷右子樹,最後訪問根節點。

在二叉樹為空的時候,結束返回。

後序遍歷二叉樹的規則:

(1)後序遍歷左子樹

(2)後序遍歷右子樹

(3)訪問根節點

注意:在完成1,2

步的時候,依然要按照後序遍歷的規則來完成。

後序遍歷的輸出順序:debfca

二叉樹遍歷規則

樹的遍歷順序大體分為三種 前序遍歷 先根遍歷 先序遍歷 中序遍歷 中根遍歷 後序遍歷 後根遍歷 如圖所示二叉樹 前序遍歷 前序遍歷可以記為根左右,若二叉樹為空,則結束返回。前序遍歷的規則 1 訪問根節點 2 前序遍歷左子樹 3 前序遍歷右子樹 這裡需要注意 在完成第2,3步的時候,也是要按照前序遍歷...

構建二叉樹 遍歷二叉樹

陣列法構建二叉樹 public class main public static void main string args 用陣列的方式構建二叉樹 public static void createbintree 把linkedlist集合轉成二叉樹的形式 for int j 0 j 最後乙個父節...

二叉樹遍歷

二叉樹的遍歷非常重要,但對已一棵比較複雜的樹,要寫出它的先 中 後序遍歷,往往不是那麼簡單,也很容易犯錯。這裡介紹一種比較直觀且不容易犯錯的方法。對於圖1所示的二叉樹,要寫出它的先 中 後序遍歷,往往很容易出錯。圖 1 其實,我們可以用圖2中的紅線描畫出二叉樹的輪廓。圖 2 而對於樹上的每乙個節點,...