Every topic here leads to the next one up. Start at the bottom, work upward, and the harder topics stop feeling hard because you already know what they're built on.
Click a topic to open its lesson. Hover over one to trace what it builds on and what it unlocks.
Pattern
Backtracking
Try a choice, undo it, try the next
Pattern
Dynamic Programming
Cache subproblems, solve them once
Data structure
Tree
Nodes with parent and child links
Pattern
Tree BFS
Walk a tree level by level
Data structure
Graph
Nodes and edges, adjacency first
Pattern
Graph DFS
Follow one path to the end
Pattern
Graph BFS
Explore outward, fewest hops first
Pattern
Sliding Window
A moving slice of the list
Pattern
Intervals
Sort ranges, then merge overlaps
Pattern
Modified Binary Search
Halve a sorted range each step
Data structure
Queue / Stack
Add and remove from the ends
Data structure
Heap
The smallest item, always on top
Pattern
Linked List Manipulation
Rewire next pointers in place
Data structure
List
Ordered values you index and scan
Data structure
Set
Fast membership checks, no duplicates
Data structure
Dictionary
Look things up by key
Pattern
Two Pointers
Two indices walk the list together
Press enter or space to select a node. You can then use the arrow keys to move the node around. Press delete to remove it and escape to cancel.
Press enter or space to select an edge. You can then press delete to remove it or escape to cancel.