Graph: nodes, edges (1,2), (1,3), (3,4). Start at node .
BFS level : node , distance .
BFS level : nodes and , distance each.
BFS level : node (from ), distance .
Node is never reached: distance .
Output for nodes through : [6, 6, 12, -1].
BFS visits each node once and processes each edge once. That's time. The adjacency list and visited array use space.