五、複雜度分析
六、層序遍歷
本文提供二叉樹前中序三種遍歷方式的遞迴和迭代統一寫法。遞迴寫法很簡單
在面試中不足以獲得面試官的青睞,應該重點掌握迭**法
144. 二叉樹的前序遍歷
94 . 二叉樹的中序遍歷
145. 二叉樹的後序遍歷
*****五星重點
遞迴寫法只需要調整list新增節點值 和 左右子樹遞迴的順序即可。
前序: 根 左 右 :list.add(root.val) -> dfs(左子樹) -> dfs(右子樹)
中序: 左 根 右 :dfs(左子樹) -> list.add(root.val) -> dfs(右子樹)
後序: 左 右 根 :dfs(左子樹) -> dfs(右子樹) -> list.add(root.val)
二叉樹遍歷(遞迴與迭代)
二叉樹遍歷演算法分為前序 preoredr 中序 inorder 後序 postorder 遍歷。並且可以設計遞迴型或者迭代型演算法。cpp view plain copy print?struct binarytreenode struct binarytreenode 1.1前序遍歷 cpp v...
二叉樹的前序遍歷(遞迴 迭代)
給定乙個二叉樹,返回它的前序遍歷。示例 輸入 1,null,2,3 1 2 3 輸出 1,2,3 高階 遞迴演算法很簡單,你可以通過迭代演算法完成嗎?遞迴確實簡單,隨便寫乙個。definition for a binary tree node.public class treenode class ...
二叉樹非遞迴(迭代)方法遍歷
運用棧來實現二叉樹的前序遍歷 while 棧不為空或結點不為空 出棧的順序和中序遍歷的結果相同 void preorder node root void preorder2 node root void preorder3 node root cur s.top right s.pop 同前序遍歷一...