您的位置:首页 > 编程语言 > Go语言

[LeetCode] Convert Sorted Array to Binary Search Tree

2014-04-21 10:43 357 查看
Total Accepted: 10670 Total Submissions: 33573

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[] num) {
return sortedArrayToBST(num, 0, num.length - 1);
}

public TreeNode sortedArrayToBST(int[] num, int lo, int hi) {
if (lo > hi) return null;
int mid = (lo + hi) >> 1;

TreeNode root = new TreeNode(num[mid]);
root.left   = sortedArrayToBST(num, lo, mid - 1);
root.right  = sortedArrayToBST(num, mid + 1, hi);

return root;
}
}


 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息