blob: e859528d609a239caae075b53f9733c8a0efd166 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
#include "leetcode.h"
class Solution {
public:
TreeNode *sortedArrayToBST(vector<int> &nums) {
int start = 0, end = nums.size() - 1;
TreeNode *root = helper(start, end, nums);
return root;
}
private:
TreeNode *helper(int start, int end, vector<int> &nums) {
if (start > end)
return NULL;
int mid = start + (end - start) / 2;
TreeNode *node = new TreeNode(nums[mid]);
node->left = helper(start, mid - 1, nums);
node->right = helper(mid + 1, end, nums);
return node;
}
};
|