Question
Which practice avoids a common mistake with Breadth-First Search?
- Ignore the Breadth-First Search issue and rely on team discipline instead of APIs or contracts.
- Silence the Breadth-First Search problem by using raw types, broad catches, or shared mutable state.
- Prefer the version of Breadth-First Search that makes behavior less predictable as long as the code compiles.
- Do not delay marking nodes as visited until much later, because duplicate enqueues can waste time and memory.
Hint
Look for the option that protects correctness instead of hiding the problem.
Answer and rationale
Correct answer: D. Do not delay marking nodes as visited until much later, because duplicate enqueues can waste time and memory.
Do not delay marking nodes as visited until much later, because duplicate enqueues can waste time and memory. This is a common failure mode in real Java code and a frequent interview follow-up.
Track: Java