class Solution {
public:
TreeNode* sortedArrayToBST(vector<int>& nums) {
if(nums.empty())
return NULL;
int mid=nums.size()/2;
TreeNode *root=new TreeNode(nums[mid]);
vector<int> ileft(nums.begin(),nums.begin()+mid);//vector结束位置为最后一个元素的下一位
vector<int> iright(nums.begin()+mid+1,nums.end());
root->left=sortedArrayToBST(ileft);
root->right=sortedArrayToBST(iright);
return root;
}
};class Solution {
public:
TreeNode* sortedAr