convert-sorted-array-to-binary-search-tree Java code

来源:互联网 发布:淘宝手机联盟怎么提现 编辑:程序博客网 时间:2024/06/05 17:53

Given an array where elements are sorted in ascending order, convert it to a height balanced BST.

/** * Definition for binary tree * public class TreeNode { *     int val; *     TreeNode left; *     TreeNode right; *     TreeNode(int x) { val = x; } * } */public class Solution {    public TreeNode sortedArrayToBST(int[] nums) {        if(nums==null||nums.length==0)            return null;        return sortedArrayToBST(nums,0,nums.length-1);    }    private TreeNode sortedArrayToBST(int[] nums, int left, int right) {        if(right<left)            return null;        if(left==right)            return new TreeNode(nums[left]);        int mid=left+(right-left+1)/2;        TreeNode root=new TreeNode(nums[mid]);        root.left=sortedArrayToBST(nums,left,mid-1);        root.right=sortedArrayToBST(nums,mid+1,right);        return root;    }}
阅读全文
0 0
原创粉丝点击