leetcode 108. Convert Sorted Array to Binary Search Tree

其实就是一个二分搜索

mid为当前root,

然后分别用左右两个部分完成左右子树的构建

class Solution {
    public TreeNode sortedArrayToBST(int[] nums) {
        TreeNode root = helper(nums, 0, nums.length-1);
        return root;
    }
    
    private TreeNode helper (int[] nums, int left, int right){
        if(left > right)
            return null;
        int mid = left + (right-left) / 2;
        TreeNode cur = new TreeNode(nums[mid]);
        cur.left = helper(nums, left, mid-1);
        cur.right = helper(nums, mid+1, right);
        return cur;
    }
}

 

posted @ 2019-08-16 02:01  南山南北秋悲  阅读(121)  评论(0编辑  收藏  举报