Question
Which practice avoids a common mistake with Queues and Breadth-First Search?
- Ignore the Queues and Breadth-First Search issue and rely on team discipline instead of clearer APIs or invariants.
- Do not swap a stack in for a queue and still call the algorithm BFS, because the traversal semantics and guarantees change.
- Silence the Queues and Breadth-First Search problem by using broad catches, hidden globals, or extra shared mutable state.
- Prefer the version of Queues and Breadth-First Search that makes behavior less predictable as long as the code still runs.
Hint
Look for the option that protects correctness instead of hiding the problem.
Answer and rationale
Correct answer: B. Do not swap a stack in for a queue and still call the algorithm BFS, because the traversal semantics and guarantees change.
Do not swap a stack in for a queue and still call the algorithm BFS, because the traversal semantics and guarantees change. This is a common failure mode in real Python code and a frequent interview follow-up.
Track: Python