Convert Sorted Array to Binary Search Tree

来源:互联网 发布:淘宝上男装原单 编辑:程序博客网 时间:2024/06/01 09:24

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

/** * Definition for a binary tree node. * public class TreeNode { *     int val; *     TreeNode left; *     TreeNode right; *     TreeNode(int x) { val = x; } * } */public class Solution {    public TreeNode sortedArrayToBST(int[] nums) {        int start = 0;        int end = nums.length-1;        return sort(nums,start,end);    }        private TreeNode sort(int[] nums, int start, int end){        if(start > end){            return null;        }        TreeNode node = new TreeNode(nums[(start+end)/2]);        node.left = sort(nums,start,(start+end)/2-1);        node.right = sort(nums,(start+end)/2+1,end);        return node;    }}


0 0