題目:
輸入二叉樹的前序和中序遍歷(且無重複數字),重建二叉樹。
思路:
二叉樹: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...