All files / leetCode 0108.ts

100% Statements 9/9
100% Branches 4/4
100% Functions 1/1
100% Lines 9/9

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16          10x 3x 7x 7x 4x 4x 4x 4x 4x    
import { TreeNode } from './Tree'
 
export default function sortedArrayToBST(
  nums: number[],
): TreeNode<number> | null {
  if (nums.length === 0)
    return null
  if (nums.length === 1)
    return new TreeNode(nums[0])
  const middle = nums.length >> 1
  const node = new TreeNode(nums[middle])
  node.left = sortedArrayToBST(nums.slice(0, middle))
  node.right = sortedArrayToBST(nums.slice(middle + 1))
  return node
}