- 金錢
- 290
- 威望
- 122
- 貢獻值
- 0
- 推廣值
- 0
- 性別
- 保密
- 在線時間
- 0 小時
- 最後登錄
- 2023-7-2
- 主題
- 0
- 精華
- 0
- 閱讀權限
- 20
- 註冊時間
- 2020-1-10
- 帖子
- 91
TA的每日心情 | 開心 2022-7-24 12:30 |
---|
簽到天數: 7 天 [LV.3]偶爾看看II - 推廣值
- 0
- 貢獻值
- 0
- 金錢
- 290
- 威望
- 122
- 主題
- 0
|
return build(preorder, inorder, 0, 0, inorder.size() - 1);
& \/ s( E# ^2 a& V9 x }
! L1 a( l6 A0 v TreeNode* build(vector<int>& preorder, vector<int>& inorder, int root, int start, int end){// 中序的start和end8 p2 Z: L8 o( C% c
if(start > end) return NULL;
# @9 Y; m; J' o& Y2 g. x TreeNode *tree = new TreeNode(preorder[root]);
( @0 o6 W8 c; T) X int i = start;+ o9 z& I% d% d% U; l# T
while(i < end && preorder[root] != inorder[i]) i++;' k, G( a% U+ E
tree->left = build(preorder, inorder, root + 1, start, i - 1);
7 w U7 Q' R" _6 {& b tree->right = build(preorder, inorder, root + 1 + i - start, i + 1, end);% d* `) h1 ` o0 Z
return tree;
9 O" h- D/ r& r }7 B) Z0 N, q* B$ A# S' `
}; |
|