劍指4 重建二叉樹

2021-10-22 19:18:28 字數 666 閱讀 3041

題目

輸入二叉樹的前序和中序遍歷(且無重複數字),重建二叉樹。

思路

二叉樹:val,left,right屬性

遞迴,輸入為陣列,輸出為treenode節點

function

reconstructtree

(pre,mid)

const rootval = pre[0]

;const node =

newtreenode

(rootval)

;//i有兩個含義,乙個是遍歷的中序下標;乙個是中序左子樹的節點個數

let i =0;

for(

;inode.left =

reconstructtree

(pre.

slice(1

,i+1

),mid.

slice(0

,i))

; node.right =

reconstructtree

(pre.

slice

(i+1

),mid.

slice

(i+1))

;return node;

}

4 重建二叉樹(劍指offer)

4.重建二叉樹 輸入某二叉樹的前序遍歷和中序遍歷的結果,請重建出該二叉樹。假設輸入的前序遍歷和中序遍歷的結果中都不含重複的數字。例如輸入前序遍歷序列和中序遍歷序列,則重建二叉樹並返回。1 思路 通常樹有如下幾種遍歷方式 前序遍歷 先訪問根結點,再訪問左子結點,最後訪問右子結點。root一般在最前 中...

劍指 7 重建二叉樹

題目描述 演算法分析 提交 class solution treenode reconstructbinarytreecore vector iterator start pre,vector iterator end pre,vector iterator start vin,vector ite...

劍指04 重建二叉樹

劍指04 重建二叉樹 題目描述 輸入某二叉樹的前序遍歷和中序遍歷的結果,請重建出該二叉樹。假設輸入的前序遍歷和中序遍歷的結果中都不含重複的數字。例如輸入前序遍歷序列和中序遍歷序列,則重建二叉樹並返回。示例1輸入 1,2,3,4,5,6,7 3,2,4,1,6,5,7 返回值解法 definition...