leetcode Convert Sorted Array to Binary Search Tree
Given an array where elements are sorted in ascending order, convert it to a height balanced BST.
1 /** 2 * Definition for binary tree 3 * public class TreeNode { 4 * int val; 5 * TreeNode left; 6 * TreeNode right; 7 * TreeNode(int x) { val = x; } 8 * } 9 */ 10 public class Solution { 11 public TreeNode sortedArrayToBST(int[] num) { 12 if (num==null || num.length==0) { 13 return null; 14 } 15 int middle = num.length/2; 16 int[] firstarray= new int[middle]; 17 int[] secondarray = new int[num.length-1-middle]; 18 for (int i = 0; i < middle; i++) { 19 firstarray[i]=num[i]; 20 } 21 for (int i = 0; i <secondarray.length; i++) { 22 secondarray[i]=num[middle+1+i]; 23 } 24 TreeNode rootNode=new TreeNode(num[middle]); 25 rootNode.left=sortedArrayToBST(firstarray); 26 rootNode.right=sortedArrayToBST(secondarray); 27 return rootNode; 28 } 29 }
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步