Your question is Graph Traversal with BFS and DFS. Start with the requirements on the right.
Run and submit as often as you like. When you're ready, talk me through your approach or go straight to the code.
At Notion, graph traversal is used to explore dependency graphs and connected components. Given a graph as an adjacency list and a starting node, implement both Breadth-First Search (BFS) and Depth-First Search (DFS) and return the order in which nodes are visited.
Write a function graph_traversals(graph, start) where:
graph is a dictionary mapping each node to a list of its neighborsstart is the node where traversal begins"bfs": list of nodes visited in BFS order"dfs": list of nodes visited in DFS preorderIf start is not in the graph, return { "bfs": [], "dfs": [] }.
Traverse neighbors in the order they appear in the adjacency list.
def graph_traversals(graph, start):