A data-structures and algorithms path with visual simulations and practice for the patterns that show up in puzzles.
Chapter 1
What data structures and algorithms are, and how to reason about a simple algorithm before working with specific structures.
Chapter 2
Array operations paired with the classic comparison sorts — bubble, selection, and insertion — worked through step by step.
Chapter 3
Singly and doubly linked lists, how nodes actually sit in memory, and when they beat a plain array.
Chapter 4
Push, pop, enqueue, and dequeue mechanics, and the everyday problems each structure is built to solve.
Chapter 5
Hashing explained from the ground up, then applied through hash sets and hash maps for near-constant-time lookups.
Chapter 6
Binary trees and the pre-order, in-order, and post-order traversals used to walk them.
Chapter 7
Graph representations plus breadth-first and depth-first traversal for modeling networks and relationships.
Chapter 8
Weighted shortest-path algorithms — Dijkstra's for non-negative edges, Bellman-Ford when negative weights are in play.
Chapter 9
Connecting every node in a graph at the lowest total cost with Prim's and Kruskal's algorithms.
Chapter 10
Pushing the most flow through a network using the Ford-Fulkerson and Edmonds-Karp algorithms.
Chapter 11
Big O analysis applied back to the sorting algorithms already covered, so runtime tradeoffs become concrete.
Chapter 12
Reference algorithms worth knowing by name: the Euclidean algorithm, Huffman coding, and the traveling salesman problem.
Chapter 13
Solvable DSA practice backed by real puzzle routes.