Leetcode•May 24, 2025
Convert Sorted Array to Binary Search Tree
Hazrat Ali
Leetcode
Given an integer array nums
where the elements are sorted in ascending order, convert it to a height balanced binary search tree.
Example 1:
Input: nums = [-10,-3,0,5,9] Output: [0,-3,9,-10,null,5] Explanation: [0,-10,5,null,-3,null,9] is also accepted:![]()
Example 2:
Input: nums = [1,3] Output: [3,1] Explanation: [1,null,3] and [3,1] are both height-balanced BSTs.
Solution
/**
* @param {number[]} nums
* @return {TreeNode}
*/
const sortedArrayToBST = nums => {
const helper = (i, j) => {
if (i > j) {
return null;
}
const mid = i + parseInt((j - i) / 2);
const root = new TreeNode(nums[mid]);
root.left = helper(i, mid - 1);
root.right = helper(mid + 1, j);
return root;
};
return helper(0, nums.length - 1);
};