码迷,mamicode.com
首页 > 其他好文 > 详细

LeetCode——Convert Sorted Array to Binary Search Tree

时间:2015-12-29 21:15:54      阅读:193      评论:0      收藏:0      [点我收藏+]

标签:

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

原题链接:https://oj.leetcode.com/problems/convert-sorted-array-to-binary-search-tree/

题目:给定一个升序排列元素的数组,将其转换成高度平衡的二叉树。

思路:已经排序。则从中间劈开,中间元素为树的根,左右递归构建。

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


LeetCode——Convert Sorted Array to Binary Search Tree

标签:

原文地址:http://www.cnblogs.com/gcczhongduan/p/5086914.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!