- 金錢
- 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);
) O, V/ y' L! a1 d }. @. Z4 G' d( d/ Y5 _
TreeNode* build(vector<int>& preorder, vector<int>& inorder, int root, int start, int end){// 中序的start和end" }( u# J4 P% U0 o4 a2 t
if(start > end) return NULL;8 I; v8 l5 U0 y4 j _
TreeNode *tree = new TreeNode(preorder[root]); X' v/ d" c0 |9 |4 d
int i = start;
8 P2 c% e2 T8 P6 C' W8 t2 n; | while(i < end && preorder[root] != inorder[i]) i++;
8 g# V7 D4 U* D4 N3 g tree->left = build(preorder, inorder, root + 1, start, i - 1);3 ^0 g6 z6 p0 k/ i6 B
tree->right = build(preorder, inorder, root + 1 + i - start, i + 1, end);% G, x# C6 C% t, N" p' i b" f
return tree;
# B5 A& c/ L+ P }& Q6 F, W, {9 I6 t8 x! \* s7 G$ I" E- i
}; |
|