二叉樹遍歷

2021-07-27 19:21:47 字數 532 閱讀 7789

二叉樹的遍歷一般來說有3種,分別為先序遍歷,中序遍歷,後序遍歷。

在二叉樹的三種遍歷中,每個節點都會經過3次。

說明如下:對於其中乙個節點來說,當指標指向該節點時,第一次訪問該節點。

當訪問完其左子樹時,會返回到該節點。

當訪問完其右子樹時,會返回到該節點。

而對於三種遍歷來說,先序遍歷是第一次訪問到該節點時,對其值進行輸出 (即先訪問該節點,再左子樹,右子樹)

中序遍歷是第二次訪問到該節點時,對其值進行輸出   (即先左子樹,再該節點,再右子樹)

後序遍歷是第三次訪問到該節點時,對其值進行輸出   (即先左子樹,再右子樹,再該節點)

所以,無論是先序,中序,後序遍歷二叉樹,遍歷時的搜尋路徑是相同的,即訪問該節點,訪問左子樹,訪問右子樹,亦即都是從根節點出發,逆時針沿二叉樹外緣移動,對每個節點都經過3次。而三種遍歷方式只不過是在這條遍歷路徑上,每個節點是在第幾次訪問時進行遍歷輸出的區別。

理解二叉樹遞迴遍歷時,可以按照這樣的思路來想,當前是指向那個節點,即當前位於哪一層。當本層**執行完成後,將會返回到上一層。

構建二叉樹 遍歷二叉樹

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

二叉樹遍歷

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

二叉樹遍歷

描述 華為實習生招聘,有一道類似如下的題目 給出二叉樹,如圖1所示 圖 1 二叉樹 要求給出中序遍歷的結果。下面分別就前序遍歷 中序遍歷 後序遍歷進行分析。規律 前序遍歷 根在前 子樹在根後且左子樹比右子樹靠前 中序遍歷 根在中 左子樹在根左邊,右子樹在根右邊 後序遍歷 根在後 子樹在根前且左子樹比...