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 | 5x 1x 4x 1x 3x | import type { TreeNode } from './Tree'
export default function lowestCommonAncestor(
root: TreeNode<number>,
p: TreeNode<number>,
q: TreeNode<number>,
): TreeNode<number> | null {
if (p.val < root.val && q.val < root.val)
return lowestCommonAncestor(root.left as TreeNode<number>, p, q)
if (p.val > root.val && q.val > root.val)
return lowestCommonAncestor(root.right as TreeNode<number>, p, q)
return root
}
|