LeetCode Card 258 — Tree DFS / Structure
Pattern signal
This pattern usually appears when the prompt involves recursive subtree questions about depth, identity, path sums, construction, or transformation. Invert Binary Tree, Maximum Depth, Same Tree, Subtree of Another Tree, and Binary Tree Maximum Path Sum belong here.
What Structure means here
In BASIC, the Structure step is where you state the invariant, helper contract, or control-flow skeleton before coding. For Tree DFS, that matters because the pattern only becomes useful once the candidate is explicit about what is being tracked, reduced, or preserved.
Interview move
A strong move is to make the plan visible before full execution. In this pattern family, say out loud what representation makes the problem easier: the map entry, the pointer invariant, the recursion contract, the queue contents, or the DP state. That keeps the implementation attached to a reason.
Common miss
The miss is failing to define the recursion contract: what each call returns and what side effects it performs. BASIC reduces that risk because the stage sequence forces you to earn the implementation instead of jumping straight into it.
BASIC prompt
“Given that this looks like Tree DFS, what is the simplest way to state the invariant, helper contract, or control-flow skeleton before coding?”