方法:递归,对不同的数组取中点作为二叉树的头节点
class Solution {public:TreeNode* sortedArrayToBST(vector<int>& nums) {return creatbst(nums,0,nums.size()-1);}TreeNode* creatbst(vector<int>& nums,int left,int right){if(left>right){return nullptr;}int mid=(right+left)/2;TreeNode* root=new TreeNode(nums[mid]);root->left=creatbst(nums,left,mid-1);root->right=creatbst(nums,mid+1,right);return root;}};
