Code Room
CodingMediumcod-g549
Subject Binary search treeLevel Mid–Senior~30 minCommon in Algorithms & data structures interviewsIndustries Software development

Question

A binary search tree had exactly two of its node values swapped by mistake. Given the (possibly corrupted) tree as a level-order array (None marks a missing child), recover it by swapping those two values back, then return the corrected inorder traversal (which must be strictly increasing). Find the two offending nodes during a single inorder walk: the inorder sequence of a BST is sorted, so the swapped pair shows up as one or two descents. Return the corrected inorder list.

Implement
recover_bst_inorder(level: list) → list[int]
Examples
in[[1,3,null,null,2]]out[1,2,3]
What a strong answer looks like

State your approach and its time/space complexity out loud before you optimize. Handle the edge cases (empty input, duplicates, overflow), and say why you chose this over the brute force. Green tests are the floor, not the grade.

Vibe coding: describe the solution in plain language (or narrate it) and the coach grades your approach. Generating runnable code from your description is coming next.

Run or narrate your approach, then ask the coach.