
Python3代码
class Solution:
def sortedArrayToBST(self, nums: List[int]) -> TreeNode:
if not nums:
return None
mid = len(nums) // 2
root = TreeNode(nums[mid])
root.left = self.sortedArrayToBST(nums[:mid])
root.right = self.sortedArrayToBST(nums[mid + 1:])
return root
java代码
class Solution {
public TreeNode sortedArrayToBST(int[] nums) {
if(nums.length==0) return null;
int index = nums.length/2;
TreeNode root=new TreeNode(nums[index]);
root.left=index==0?null:sortedArrayToBST(Arrays.copyOfRange(nums,0,index));
root.right=index==nums.length-1?null:sortedArrayToBST(Arrays.copyOfRange(nums,index+1,nums.length));
return root;
}
}