Search⌘ K
AI Features

Problem: Recover Binary Search Tree

Understand how to recover a binary search tree when two nodes are swapped by mistake. Learn to implement an O(1) space solution using Morris inorder traversal that identifies misplaced nodes by detecting violations in inorder sequence and swaps them back without altering the tree structure.

Statement

You are given the root of a binary search tree (BST) in which the values of exactly two nodes have been swapped by mistake. Restore the BST to its correct form without altering the structure of the tree.

Note: A solution using O(n)O(n) space is relatively straightforward. Can you devise a constant O(1)O(1) space solution?

Constraints:

  • The number of nodes in the tree is in the range [2,1000 ...