Convert Sorted Array to Binary Search Tree
来源:互联网 发布:天书世界太极进阶数据 编辑:程序博客网 时间:2024/06/06 02:13
Given an array where elements are sorted in ascending order, convert it to a height balanced BST.
思路:刚刚开始的时候没有看到题目中说这个数组是升序的,就觉得很麻烦,既然数组是升序的,那就好办了,题目中说的是要转换为平衡的排序二叉树,要保证左右两边的高度相差不超过1,数组中间的那个数肯定是根结点,然后左子树肯定是左边的子数组构成的,右子树肯定是右边的子数组构成,这个过程可以看成是递归的,也就是重新在左右子数组中构建一棵子树,作为根结点的左右子树即可。
/** * 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 length=nums.length; if(length==0) return null; return constructSubtree(nums,0,length-1); } public TreeNode constructSubtree(int[] nums,int left,int right) { if(right-left==0) return new TreeNode(nums[left]); if(left>right) return null; int mid=(left+right)/2; TreeNode root=new TreeNode(nums[mid]); root.left=constructSubtree(nums,left,mid-1); root.right=constructSubtree(nums,mid+1,right); return root; }}
0 0
- Convert Sorted Array to Binary Search Tree
- Convert Sorted Array to Binary Search Tree
- Convert Sorted Array to Binary Search Tree
- Convert Sorted Array to Binary Search Tree
- Convert Sorted Array to Binary Search Tree
- Convert Sorted Array to Binary Search Tree
- Convert Sorted Array to Binary Search Tree
- Convert Sorted Array to Binary Search Tree
- Convert Sorted Array to Binary Search Tree
- Convert Sorted Array to Binary Search Tree
- Convert Sorted Array to Binary Search Tree
- Convert Sorted Array to Binary Search Tree
- Convert Sorted Array to Binary Search Tree
- Convert Sorted Array to Binary Search Tree
- Convert Sorted Array to Binary Search Tree
- Convert Sorted Array to Binary Search Tree
- Convert Sorted Array to Binary Search Tree
- Convert Sorted Array to Binary Search Tree
- iframe与主框架跨域相互访问方法
- java中double类型的数据保留两位小数的方法
- ListView下拉刷新
- Spring Security 3.x 完整入门
- HashMap和TreeMap的区别
- Convert Sorted Array to Binary Search Tree
- 一步到位修改linux系统时间
- 图形化界面
- 矩阵理解(一)
- IOS上 关于状态栏的相关设置(UIStatusBar)
- Android studio隐藏标题栏
- UILabel详解
- SQL学习之使用order by 按照指定顺序排序或自定义顺序排序
- Visual Studio静态编译