CS
Data structures and algorithms
The standard interview canon, with the dynamic-programming section pointed straight at expected-value recursions.
- 1
Complexity
Big-O, amortised analysis, recurrences and the master theorem.
- 2
Linear structures
Arrays, hash maps, linked lists, stacks, queues and monotonic structures.
- 3
Trees and heaps
BSTs, balanced trees, heaps, tries, segment and Fenwick trees.
- 4
Graphs
BFS, DFS, topological sort, shortest paths, MST and union–find.
- 5
Core techniques
Sorting, binary search on the answer, two pointers and sliding windows.
- 6
Dynamic programming
Knapsack, LIS, interval and bitmask DP — and its link to expected-value recursions.
- 7
Bit manipulation and number theory
Bitwise tricks, modular arithmetic, fast exponentiation and sieves.