Purpose

This section holds algorithmic tools that recur across many problems. The notes split into two rough groups: core concepts such as graph fundamentals, trees, and induction, and reusable patterns such as BFS, sliding windows, and dynamic programming.

If you are starting from scratch, read graph fundamentals before the graph traversals, then move to breadth-first search, depth-first search, and connected components. For counting arguments and proofs, induction and trees carry a lot of the load.

Entry points

17 items under this folder.