-
2.11
- 秒了
-
1.26
- 秒了
-
1.16
- 思路想到了,但是没想到这么简单,递归取 mid 就行
-
11.11
- 挺有意思,递归的其实是数组,每次递归从中间分为两半(同时将中间节点生成新root),递归两边
class Solution {
public TreeNode sortedArrayToBST(int[] nums) {
return hello(nums,0,nums.length-1);
}
public TreeNode hello(int[] nums,int l,int r){
if(r<l){
return null;
}
int mid = (r+l)/2;
TreeNode root = new TreeNode(nums[mid]);
root.left = hello(nums,l,mid-1);
root.right = hello(nums,mid+1,r);
return root;
}
}- 以数组左右边界不相等为结束条件
- 在递归中创建节点后指定左右叶子结点进入递归