AlgoPrecision

Tree Visualizer

Binary Search Trees

Build a BST, trace search decisions, and step through inorder traversal with highlighted nodes and synced pseudocode.

O(h)
4218672991543673

Step Note

Find LCA for 36 and 42.

Details
function lca(root: Node | null, p: number, q: number) {
  let current = root
  while (current) {
    if (p < current.value && q < current.value) current = current.left
    else if (p > current.value && q > current.value) current = current.right
    else return current
  }
  return null
}