The Art of Computer Programming

Lecture Slides Lab Solutions
1. Review, Complexity & Divide and Conquer
2. Advanced OOP & Design Patterns
3. Hash Tables
4. Binary Search Trees & Red-Black Trees
5. Dynamic Programming, Greedy & Amortized Analysis
6. Graphs: BFS, DFS, Topological Sort & SCC
7. Minimum Spanning Trees & Shortest Paths
8. A*, All-Pairs Shortest Paths, Maximum Flow & Bipartite Matching
9. Autograd: Automatic Differentiation & Backpropagation
10. Natural Language Processing: The Bigram Character Language Model

Other courses