DSA Roadmap
Work through problems by category. Check them off as you go, your progress is saved locally, no sign-in required.
Your progress
Saved in this browser, no account needed.
Arrays & Hashing
Hash maps, frequency counting, prefix sums, and matrix manipulation, the foundation.
0/65
Arrays & Hashing
Hash maps, frequency counting, prefix sums, and matrix manipulation, the foundation.
- Easy
- Medium
- Easy
- Medium
- Easy
- Medium
- Easy
- Easy
- Easy
- Easy
- Medium
- Medium
- Easy
- Easy
- Easy
- Easy
- Medium
- Medium
- Medium
- Medium
- Easy
- Medium
- Medium
- Easy
- Easy
- Medium
- Easy
- Medium
- Medium
- Medium
- Easy
- Easy
- Easy
- Medium
- Medium
- Hard
- Medium
- Easy
- Easy
- Easy
- Medium
- Medium
- Medium
- Medium
- Medium
- Hard
- Medium
- Medium
- Easy
- Medium
- Hard
- Medium
- Easy
- Easy
- Easy
Strings
Parsing, building, and transforming strings and substrings.
0/28
Strings
Parsing, building, and transforming strings and substrings.
- Easy
- Easy
- Easy
- Medium
- Easy
- Medium
- Easy
- Easy
- Easy
- Easy
- Medium
- Easy
- Easy
- Medium
- Easy
- Medium
- Easy
- Medium
- Easy
- Medium
- Medium
- Easy
- Easy
- Medium
- Hard
- Medium
- Medium
- Easy
Two Pointers
Walk a sequence from both ends or at different speeds for O(n) solutions.
0/10
Two Pointers
Walk a sequence from both ends or at different speeds for O(n) solutions.
- Medium
- Medium
- Medium
- Easy
- Medium
- Medium
- Medium
- Medium
- Medium
- Easy
Sliding Window
Maintain a moving range to answer subarray/substring questions efficiently.
0/2
Sliding Window
Maintain a moving range to answer subarray/substring questions efficiently.
- Easy
- Medium
Stack & Queue
LIFO/FIFO thinking: matching, monotonic stacks, and ordered processing.
0/6
Stack & Queue
LIFO/FIFO thinking: matching, monotonic stacks, and ordered processing.
- Easy
- Hard
- Medium
- Hard
- Medium
- Medium
Binary Search
Halve the search space each step, on arrays and on answers.
0/20
Binary Search
Halve the search space each step, on arrays and on answers.
- Medium
- Medium
- Hard
- Medium
- Easy
- Medium
- Easy
- Medium
- Medium
- Hard
- Easy
- Medium
- Hard
- Medium
- Medium
- Hard
- Medium
- Medium
- Easy
- Medium
Linked List
Pointer manipulation, fast/slow pointers, and in-place reversal.
0/1
Linked List
Pointer manipulation, fast/slow pointers, and in-place reversal.
- Medium
Trees & Tries
DFS, BFS, and recursion over binary trees, BSTs, and tries.
0/11
Trees & Tries
DFS, BFS, and recursion over binary trees, BSTs, and tries.
- Medium
- Medium
- Medium
- Hard
- Hard
- Hard
- Hard
- Medium
- Hard
- Medium
- Hard
Heap / Priority Queue
Always grab the smallest or largest next, top-K and scheduling problems.
0/11
Heap / Priority Queue
Always grab the smallest or largest next, top-K and scheduling problems.
- Medium
- Medium
- Hard
- Medium
- Hard
- Hard
- Easy
- Hard
- Medium
- Easy
- Hard
Backtracking
Explore all candidates by building and undoing choices.
0/6
Backtracking
Explore all candidates by building and undoing choices.
- Hard
- Easy
- Medium
- Medium
- Medium
- Medium
Graphs
Traversal, shortest paths, union-find, and topological order.
0/21
Graphs
Traversal, shortest paths, union-find, and topological order.
- Easy
- Hard
- Medium
- Hard
- Medium
- Medium
- Medium
- Medium
- Hard
- Medium
- Medium
- Medium
- Medium
- Medium
- Hard
- Hard
- Hard
- Medium
- Medium
- Medium
- Medium
Dynamic Programming
Break problems into overlapping subproblems, the interview boss level.
0/53
Dynamic Programming
Break problems into overlapping subproblems, the interview boss level.
- Hard
- Medium
- Medium
- Medium
- Medium
- Medium
- Medium
- Hard
- Medium
- Medium
- Medium
- Hard
- Hard
- Hard
- Hard
- Medium
- Medium
- Hard
- Medium
- Medium
- Hard
- Medium
- Medium
- Medium
- Medium
- Medium
- Hard
- Medium
- Hard
- Hard
- Hard
- Medium
- Medium
- Hard
- Hard
- Medium
- Hard
- Medium
- Medium
- Hard
- Medium
- Hard
- Hard
- Medium
- Medium
- Hard
- Hard
- Medium
- Hard
- Hard
- Hard
- Medium
- Medium
Greedy
Make the locally optimal choice and prove it stays optimal.
0/24
Greedy
Make the locally optimal choice and prove it stays optimal.
- Hard
- Medium
- Easy
- Easy
- Medium
- Hard
- Medium
- Medium
- Medium
- Medium
- Medium
- Easy
- Medium
- Easy
- Medium
- Easy
- Medium
- Medium
- Medium
- Hard
- Medium
- Medium
- Easy
- Medium
Math & Geometry
Number theory, combinatorics, and geometric reasoning.
0/43
Math & Geometry
Number theory, combinatorics, and geometric reasoning.
- Medium
- Easy
- Medium
- Easy
- Easy
- Medium
- Medium
- Easy
- Easy
- Easy
- Medium
- Medium
- Medium
- Easy
- Easy
- Easy
- Hard
- Easy
- Medium
- Medium
- Easy
- Medium
- Easy
- Medium
- Medium
- Hard
- Medium
- Medium
- Easy
- Medium
- Easy
- Easy
- Easy
- Medium
- Easy
- Easy
- Easy
- Medium
- Medium
- Easy
- Medium
- Easy
Bit Manipulation
Solve with XOR, masks, and bit tricks.
0/21
Bit Manipulation
Solve with XOR, masks, and bit tricks.
- Easy
- Easy
- Easy
- Easy
- Easy
- Easy
- Easy
- Easy
- Easy
- Medium
- Medium
- Medium
- Medium
- Medium
- Medium
- Easy
- Medium
- Easy
- Hard
- Easy
- Hard