Breadth-First Search
Explore level by level from a starting point, the go-to way to find the shortest path in an unweighted graph.
Explore as far as possible down one path before backtracking, used to walk trees, graphs, and grids.
Change the color of a connected region in an image, starting from one pixel.
Find the number of nodes along the longest path from the root of a tree to a leaf.
Check whether a binary tree has a root-to-leaf path that adds up to a target sum.
Explore level by level from a starting point, the go-to way to find the shortest path in an unweighted graph.
Find the shortest path from a starting node to every other node in a graph where edges have non-negative weights.
Find the shortest path from a starting node even when some edges have negative weights, and detect negative cycles.
Order the nodes of a graph so every task comes after everything it depends on, used for scheduling and build order.
Track which nodes belong to the same group and merge groups quickly, used to detect cycles and build networks.
Build the cheapest network connecting all nodes by adding the smallest edges first, skipping any that form a cycle.