給定乙個二叉樹的根節點 root ,返回它的 中序 遍歷。
示例 1:
輸入:root = [1,null,2,3]
輸出:[1,3,2]
示例 2:
輸入:root =
輸出:示例 3:
輸入:root = [1]
輸出:[1]
示例 4:
輸入:root = [1,2]
輸出:[2,1]
示例 5:
輸入:root = [1,null,2]
輸出:[1,2]
樹中節點數目在範圍 [0, 100] 內
-100 <= node.val <= 100
遞迴遍歷二叉樹的左子樹,根,右子樹。
1.先定義乙個遞迴函式用來遞迴遍歷二叉樹。
2.把根的左子樹當成函式引數,先遍歷左子樹。
3.函式出口為當節點為空時返回空。
4.定義乙個陣列,把按順序遍歷的節點放入到陣列中。
使用棧中序遍歷二叉樹,先把二叉樹的左子樹全部放入到棧中,取出左子樹最下端的乙個節點,加入到結果集中,然後遍歷右子樹。
二叉樹中序遍歷
訪問根結點的的左子樹,訪問根結點和訪問根結點的右子樹依次記作 l,d r 中序遍歷 ldr 演算法 遍歷根結點的左子樹,訪問根結點 遍歷根結點的右子樹 對於上面的圖,我們假定只有a,b,c三個結點,則中序遍歷結果為 b a c 採用上節 二叉樹鏈式儲存和前序遍歷 中的遞迴推演 db a c d b ...
二叉樹中序遍歷
二叉樹中序遍歷 非遞迴版本的中序遍歷用棧來實現。乙個元素出現在棧頂一次,這一次會被處理並出棧。trick 用乙個指標去記錄當前節點cur,如果cur left左側還未遍歷,就會將cur入棧並訪問cur left。一行很重要的 是cur cur right,這一句之後如果cur null,則說明棧頂元...
二叉樹先序遍歷和中序遍歷確定二叉樹
由於希望得到一顆二叉樹,所以返回值型別是乙個指向根節點的指標 表示得到了一顆二叉樹 btnode creatbt char pre,char int,int l1,int r1,int l2,int r2 引數列表有傳入的先序序列和後序序列和他們的開頭和結尾 由於是遞迴函式,先寫乙個遞迴出口,顯然是...