1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
|
class Solution { public: TreeNode* sortedArrayToBST(vector<int>& nums) { return helper(nums, 0, nums.size() - 1); } private: TreeNode* helper(vector<int>& nums, int start, int end) { if(start > end) return nullptr; int mid = (start + end) >> 1; TreeNode* node = new TreeNode(nums[mid]); node->left = helper(nums, start, mid - 1); node->right = helper(nums, mid + 1, end); return node; } };
|