Level 2 · M.Sc
Algorithms & Data Structures
Syllabus · 42 phases · ~1 year
Every unit this programme teaches, in the order it is taught. Headlines only — the material itself opens once you are enrolled.
- Phase 0 Foundations & tooling
- Phase 1 Models of computation & counting steps
- Phase 2 Asymptotic notation
- Phase 3 Recursion & recurrences
- Phase 4 Correctness: invariants & proofs
- Phase 5 Amortized analysis
- Phase 6 Randomness in algorithms
- Phase 7 Arrays & linked lists
- Phase 8 Stacks, queues & deques
- Phase 9 Binary trees & BSTs
- Phase 10 Heaps & priority queues
- Phase 11 Hash tables: chaining, open addressing & Robin-Hood
- Phase 12 Balanced search trees I: AVL
- Phase 13 Balanced search trees II: red–black
- Phase 14 Disjoint sets (union–find)
- Phase 15 Elementary sorting & binary search
- Phase 16 Mergesort, quicksort & maximum subarray
- Phase 17 Heapsort, the lower bound & linear-time sorts
- Phase 18 Selection & order statistics
- Phase 19 Greedy algorithms
- Phase 20 Dynamic programming I
- Phase 21 Dynamic programming II
- Phase 22 Backtracking & branch-and-bound
- Phase 23 Number-theoretic algorithms
- Phase 24 Polynomials & the Fast Fourier Transform
- Phase 25 Matrix & algebraic algorithms
- Phase 26 Graph representations & BFS
- Phase 27 DFS, topological sort, SCC & 2-SAT
- Phase 28 Shortest paths I: Dijkstra
- Phase 29 Shortest paths II: Bellman–Ford & Floyd–Warshall
- Phase 30 Minimum spanning trees
- Phase 31 Maximum flow & bipartite matching
- Phase 32 String matching: Rabin–Karp, KMP & Z
- Phase 33 Tries & prefix structures
- Phase 34 Suffix arrays: an introduction
- Phase 35 The competitive solver
- Phase 36 Benchmarking & profiling in practice
- Phase 37 Testing algorithms
- Phase 38 Intractability primer
-
Phase 39
Capstone:
algoforgeis complete - Phase 40 Hardening, postmortem & "What's Next"
- Phase 41 Portal integration