Reconstruct a unique-value binary tree from its preorder and inorder traversals.
A good solution should
- State the invariant or decision rule that makes the approach correct.
- Explain the time and space complexity in terms of the input sizes and required output.
- Handle empty, minimal, duplicate, and boundary-shaped inputs covered by the contract.
Reasoning prompt
Use preorder to select the root and inorder to divide left from right. Avoid linear searches at every recursion by indexing positions.
Use the linked judge for the canonical problem. The examples above are compact TRT checks; write additional cases before submitting, especially for the boundary that tends to break your chosen invariant.