标签:lock 一起 get NPU sorted put 数组 style 题意
将有序数组转化为二叉搜索树。题目即是题意。只要输出一个有效的BST即可。此题可以跟109题一起做,要求很接近但是做法不太一样。例子,
Example:
Given the sorted linked list: [-10,-3,0,5,9], One possible answer is: [0,-3,9,-10,null,5], which represents the following height balanced BST: 0 / -3 9 / / -10 5
这个题可以用递归做。因为是BST的关系,而且input是有序数组,所以找到数组的mid元素,即是找到了BST的根节点。代码如下
时间O(n)
空间O(n)
1 /** 2 * @param {number[]} nums 3 * @return {TreeNode} 4 */ 5 var sortedArrayToBST = function (nums) { 6 if (!nums) return null; 7 return helper(nums, 0, nums.length - 1); 8 } 9 10 var helper = function (nums, low, high) { 11 if (low > high) return null; 12 var mid = Math.floor((high + low) / 2); 13 var node = new TreeNode(nums[mid]); 14 node.left = helper(nums, low, mid - 1); 15 node.right = helper(nums, mid + 1, high); 16 return node; 17 }
[LeetCode] 108. Convert Sorted Array to Binary Search Tree
标签:lock 一起 get NPU sorted put 数组 style 题意
原文地址:https://www.cnblogs.com/aaronliu1991/p/12293678.html