39.1: Convert Sorted Array to Binary Search Tree
/************************************************************************/
/* 39.1: Convert Sorted Array to Binary Search Tree */
/************************************************************************/
/*
* Given an array where elements are sorted in ascending order, convert it to a height balanced BST.
*
* */
public TreeNode sortedArrayToBST(int[] num) { if(num==null|| num.length<1) { return null; } return buildhelper(0,num.length-1,num); } private TreeNode buildhelper(int start,int end,int[] num) { if(start>end) { return null; } int rootindex=start+(end-start)/2; TreeNode root=new TreeNode(num[rootindex]); root.left=buildhelper(start,rootindex-1,num); root.right=buildhelper(rootindex+1,end,num); return root; }