把一个有序序列转化为平衡二叉排序树
用递归,类似二分构建,找到middle,作为根节点
public TreeNode sortedArrayToBST(int[] num) {
int len = num.length;
TreeNode root = build(num,0,len-1);
return root;
}
TreeNode build(int[] num,int left,int right){
TreeNode root = null;
if(left <= right){
int middle = (left+right)/2;
root = new TreeNode(num[middle]);
root.left = build(num,left,middle-1);
root.right = build(num,middle+1,right);
}
return root;
}