CMU 15-451 (Algorithms), Fall 2001

Instructors: Avrim Blum, Klaus Sutner

TAs: Yan Karklin, Sam Pinansky, Weng-Keen Wong


For the official course webpage, go to http://www.cmu.edu/blackboard

Course information


Assignments


Lecture notes

  1. 08/28:Intro & Admin. Karatsuba multiplication.
    Recitation 08/29: sample problems
  2. 08/30:Asymptotic analysis. Solving recurrences.
  3. 09/04:Probabilistic analysis. Randomized Quicksort.
    Recitation 09/05: recurrence, probability examples
  4. 09/06:Linear-time selection (randomized and deterministic).
  5. 09/11:Lower bounds for comparison sorting.
    Recitation 09/12:coupon-collector, coin-flipping, and H_n
  6. 09/13:Dynamic programming.
  7. 09/18:Balanced search trees.
    Recitation 09/19: quiz review.
  8. 09/20:Amortized analysis.
  9. 09/25:Self-adjusting lists and trees. Here are some additional notes.
  10. 09/27:Radix structures.
  11. 10/02:Hashing I.
  12. 10/04:Hashing II.
  13. 10/09:Graph algs I: topological sort, MST (Prim and Kruskal).
  14. 10/11:Union-find.
  15. 10/16:Graph exploration and matrix-based graph algorithms.
  16. 10/23:Strongly connected components & related algorithms.
  17. 10/25:Network Flows and Matchings I (Ford-Fulkerson, Edmonds-Karp #1).
  18. 10/30:Network Flows and Matchings II (Edmonds-Karp #2, Dinic/MPM, Min-cost Max-flow).
  19. 11/01:Linear Programming.
  20. 11/06:NP-completeness I.
  21. 11/08:NP-completeness II.
  22. 11/13:Approximation Algorithms.
  23. 11/15:Number-theoretic algorithms I.
  24. 11/20:Number-theoretic algorithms II.
  25. 11/27:The Fast Fourier Transform.
  26. 11/30:Minimizing Finite Automata.
  27. 12/04:Shortest paths, Global minimum cuts.
  28. 12/06:String matching.
  29. 12/11:Review & further directions.