undirected graph — BFS from A
A
B
C
D
E
F
queue (FIFO)
front →
(empty)
← backBFS shortest paths
▸1bfs(graph, source):2 dist = {}3 dist[source] = 04 queue = [source]5 while queue not empty:6 u = queue.dequeue() // front7 for v in adj[u]:8 if v not in dist:9 dist[v] = dist[u] + 110 queue.enqueue(v) // back11 // dist[v] = fewest edges from source
state
- nodes (V)6
- edges (E)7
- sourceA