Graph Traversals: DFS vs BFS
Trees and graphs model complex relationships, like social networks and routing protocols. Mastering Depth-First Search (DFS) and Breadth-First Search (BFS) is non-negotiable for MAANG interviews.
When to use what?
- BFS: Use for finding the shortest path on unweighted graphs (e.g., "Word Ladder"). It processes level by level.
- DFS: Use for exhaustive search, topological sorting, or cycle detection. Usually implemented with recursion.
Pro Tip: Always clarify if the graph is directed/undirected and if it contains cycles before starting your implementation.