Track map
Interview-ready data structures and algorithms, organised by pattern, with all code in TypeScript and the real cost of JS built-ins.
Track progress
0/11lessons complete
Unit 1
Growth rates, computing time and space complexity, amortised cost, JS array costs, and approaching an interview problem.
Finishing a lesson checks it automatically. You can also mark it learned here.
Review key ideas →Test out of this unit →Unit 2
Map and Set, frequency counting, complement lookup, grouping by a key, prefix sums, and top-k by frequency.
Finishing a lesson checks it automatically. You can also mark it learned here.
Review key ideas →Test out of this unit →Unit 3
Opposite ends on sorted input, palindromes, read/write pointers, 3Sum, and container with most water.
Finishing a lesson checks it automatically. You can also mark it learned here.
Lessons for this unit are coming soon.
Unit 4
Fixed and variable windows, windows with counts, the at-most-K trick, and recognising window problems.
Finishing a lesson checks it automatically. You can also mark it learned here.
Lessons for this unit are coming soon.
Unit 5
Stack basics, min stack, monotonic stacks, expression evaluation, and queues and deques in TypeScript.
Finishing a lesson checks it automatically. You can also mark it learned here.
Lessons for this unit are coming soon.
Unit 6
Binary search with invariants, lower and upper bounds, rotated arrays, searching on the answer, and sorting.
Finishing a lesson checks it automatically. You can also mark it learned here.
Lessons for this unit are coming soon.
Unit 7
Lists in TypeScript, reversal, merging, fast and slow pointers, removing the nth node, and an LRU cache.
Finishing a lesson checks it automatically. You can also mark it learned here.
Lessons for this unit are coming soon.
Unit 8
DFS and BFS traversals, recursion and return-value patterns, binary search trees, LCA, and serialisation.
Finishing a lesson checks it automatically. You can also mark it learned here.
Lessons for this unit are coming soon.
Unit 9
Trie structure, insert and search, autocomplete, and word search II.
Finishing a lesson checks it automatically. You can also mark it learned here.
Lessons for this unit are coming soon.
Unit 10
Binary heaps in TypeScript, top-k and kth largest, merging k sorted lists, and the two-heaps median.
Finishing a lesson checks it automatically. You can also mark it learned here.
Lessons for this unit are coming soon.
Unit 11
The choose-explore-unchoose template, subsets, permutations, pruning, and constraint problems.
Finishing a lesson checks it automatically. You can also mark it learned here.
Lessons for this unit are coming soon.
Unit 12
Graph representations, DFS and BFS, topological sort, Union-Find, Dijkstra, and choosing an algorithm.
Finishing a lesson checks it automatically. You can also mark it learned here.
Lessons for this unit are coming soon.
Unit 13
Memoisation and tabulation, 1-D and 2-D patterns, string DP, knapsack, and designing the state.
Finishing a lesson checks it automatically. You can also mark it learned here.
Lessons for this unit are coming soon.
Unit 14
Greedy choices and proofs, jump game, interval problems, and a guide from constraints to technique.
Finishing a lesson checks it automatically. You can also mark it learned here.
Lessons for this unit are coming soon.