Search⌘ K
AI Features

Problem: Recover Binary Search Tree

Understand how to recover a binary search tree where two nodes are swapped by mistake. Explore the Morris inorder traversal technique to restore the tree in linear time and constant space by detecting violations during traversal and correcting them efficiently.

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 ...