JavaScript · 117 topics · 26 patterns
What every developer uses daily and what interviews ask most. Work through this in order.
The vocabulary and building blocks everything else uses.
0/6 lessons done
Sequences you walk in order.
0/8 lessons done
Trade memory for O(1) lookup.
0/2 lessons done
Find an item, order a list. Binary search and merge/quick sort are interview staples.
0/8 lessons done
Frequently asked problems built on arrays and strings.
0/7 lessons done
Build all candidates, prune the bad branches.
0/8 lessons done
Hierarchies, ordered lookup and priority.
0/7 lessons done
Nodes and edges: traversal, cycles, ordering, shortest paths.
0/7 lessons done
Overlapping subproblems solved once.
0/7 lessons done
Number tricks that show up in interviews.
0/6 lessons done
Specialised structures and algorithms. Useful to know, rarely required. Pick what interests you.
Self-balancing trees, range-query trees and probabilistic sets.
0/6 lessons done
Spanning trees, all-pairs paths, connectivity and tours.
0/10 lessons done
Fast string matching and harder dynamic programming.
0/8 lessons done
Non-comparison sorts and alternative searches.
0/6 lessons done
Number theory and numeric methods.
0/11 lessons done
Ciphers, machine learning, images, randomness and puzzles.
0/10 lessons done