力扣實戰記錄第145題 二叉樹的後序遍歷

2021-09-27 07:14:21 字數 570 閱讀 2991

二叉樹的後序遍歷的遞迴演算法很簡單,就是按照左、右、根的順序進行遞迴遍歷。這裡貼上我寫的演算法:

class

solution

return mvector;}}

;

下面採用的是棧和後序遍歷的非遞迴演算法,解釋一下原理,就是後序遍歷的話,也要記錄每乙個根節點,然後因為要按照左、右、根的順序進行遍歷,所以說肯定要讓root等於棧頂元素之後才開始,這之後現在root已經是左子樹的最末尾端了,所以說要看看它有沒有右子樹,如果它有右子樹的話,並且右子樹沒有被訪問過,應該先把右子樹挪動到棧裡,進行訪問,否則,就直接訪問這個節點,並且將這個節點賦值為空,下一次直接讓它等於棧頂元素就ok了,乙個小技巧是因為要記錄是否已經訪問右節點,如果沒有訪問肯定會優先訪問右節點,所以要設定乙個指標記錄右節點的訪問情況,記錄下上一次訪問節點的情況。如果訪問了右節點,則直接訪問根節點就可以了。

下面貼上**:

class

solution

else

else}}

return mvector;}}

;

力扣二叉樹題目記錄

題目描述 輸入一棵二叉樹的根節點,求該樹的深度。從根節點到葉節點依次經過的節點 含根 葉節點 形成樹的一條路徑,最長路徑的長度為樹的深度。示例 給定二叉樹 3,9,20,null,null,15,7 3 9 20 15 7 返回它的最大深度 3 匯入包構建二叉樹,否則root沒有屬性left rig...

二叉樹 力扣刷題

把二叉樹上的每乙個節點的左右子節點進行交換 definition for a binary tree node.public class treenode class solution 給定乙個 完美二叉樹 其所有葉子節點都在同一層,每個父節點都有兩個子節點。二叉樹定義如下 struct node ...

力扣OJ題 對稱二叉樹

給定乙個二叉樹,檢查它是否是映象對稱的。二叉樹 1,2,2,3,4,4,3 是對稱的。1 2 2 3 4 4 3 但是下面這個 1,2,2,null,3,null,3 則不是映象對稱的 1 2 2 3 3 把它直接看成只有三個節點 根節點,左子樹,右子樹 的樹,不需要展開,直接呼叫。這個題需要兩個方...