← Graph Exploration

Micro-Drill #64 — BFS template

Graph Exploration Target: 15s

BFS explores level-by-level. Gives shortest path in unweighted graphs.

from collections import deque
q = deque([start])
visited = {start}
while q:
    node = q.popleft()
    for nb in graph[node]:
        if nb not in visited:
            visited.add(nb)
            q.append(nb)

Type it from memory. Go.

Practice Problems

Related Coding Drills

← Micro #63 Micro #65 →