
Algorithms for Interviews
All the core techniques of algorithm interviews, from arrays to dynamic programming. Short lessons with diagrams, problems with automatic code checking, and explaining your solution out loud to an AI interviewer, just like in a real interview.
Getting Started
How the course works and how to evaluate solutions: Big O made simple.
Arrays and Two Pointers
When two pointers turn O(n²) into O(n).
Sliding Window and Prefix Sums
Subarrays and substrings without redundant recomputation.
Hash Tables
O(1) lookup: the most common optimization in interviews.
Linked Lists
Pointers, the dummy head, and fast and slow pointers.
Stack and Queue
Brackets, "next greater," and the monotonic stack.
Trees
Depth-first and breadth-first traversals, recursion without fear.
Graphs
Grids, islands and dependency order.
Heap
Top-K and "the biggest one right now."
Binary Search
Not just in arrays: searching on the answer.
Backtracking
Subsets, permutations, and combinations.
Dynamic Programming
How to turn brute force into a table.