Problem sets
169 free LeetCode problems in 20 patterns. Read the lesson first, then work down the list: twenty minutes on a problem before you look at anything. The interview plan spreads these over ten weeks.
Arrays and hashing 9
Learn it from Arrays & Strings (free with an account), Hashing (free with an account).
Two pointers 6
Learn it from Interview Patterns (recognize the shape, apply the template) (with a plan), Clinic #17: Container With Most Water (with a plan).
Sliding window 8
Learn it from Interview Patterns (recognize the shape, apply the template) (with a plan), Clinic #06: Longest Substring Without Repeating Characters (with a plan).
Prefix sums 8
Learn it from The running total (prefix sums and difference arrays) (with a plan).
Stack and monotonic stack 8
Learn it from Linked Lists, Stacks & Queues (with a plan), Clinic #08: Daily Temperatures (with a plan), The stack that stays sorted (monotonic stack and deque) (with a plan).
Binary search on an index 7
Learn it from Sorting & Searching (with a plan), Clinic #11: Binary Search (with a plan).
Binary search on the answer 5
Learn it from Clinic #33: Koko Eating Bananas (with a plan).
Linked lists and fast/slow pointers 11
Learn it from Clinic #34: Linked List Cycle (with a plan), Clinic #01: Reverse a Linked List (with a plan).
Trees 15
Learn it from Trees (BST, balancing, heaps, tries) (with a plan), Trees, Worked (rotations, B-trees, range trees) (with a plan).
Tries 4
Learn it from Clinic #23: Implement Trie (with a plan), Clinic #24: Word Search II (with a plan).
Heaps and top-k 8
Learn it from Clinic #19: Kth Largest Element in an Array (with a plan), Clinic #20: Top K Frequent Elements (with a plan), Two heaps and a merge (running median, k-way merge, top-k) (with a plan).
Backtracking 10
Learn it from Algorithm Design Patterns (with a plan), Clinic #13: Subsets (with a plan).
Graphs: BFS, DFS and topological sort 10
Learn it from Graphs (BFS, DFS, Dijkstra, topological sort) (with a plan), Clinic #15: Number of Islands (with a plan), Clinic #16: Course Schedule (with a plan).
Shortest paths 6
Learn it from Clinic #25: Network Delay Time (with a plan), Shortest Paths, Worked (Dijkstra, Bellman-Ford, A*) (with a plan).
Union-find 5
Learn it from Clinic #26: Redundant Connection (with a plan), Who is in my group? (union-find) (with a plan).
Intervals 7
Learn it from Clinic #28: Merge Intervals (with a plan), Clinic #29: Non-overlapping Intervals (with a plan).
Greedy 9
Learn it from Clinic #27: Jump Game (with a plan), Algorithm Design Patterns (with a plan).
1-D dynamic programming 12
Learn it from Recursion & Dynamic Programming (with a plan), Dynamic Programming, Worked (filling the table) (with a plan).
2-D dynamic programming 10
Learn it from Dynamic Programming, Worked (filling the table) (with a plan), Clinic #22: Longest Common Subsequence (with a plan).
Bits and math 11
Learn it from Bit Manipulation (thinking in bits) (with a plan), Clinic #32: Single Number (with a plan).