Computational Complexity

  1. Syllabus
  2. PDF

  3. Office Hours:
  4. By Appointment

  5. Selected Lecture Notes

  6. Notes Date
    Mathematical Preliminaries January 26
    Complexity Basics February 2
    Algorithmic Insights - Recursion and Divide and Conquer February 9
    Algorithmic Insights - Greedy and Dynamic Programming February 16, February 23
    Algorithmic Insights - Maximum Flow, Minimum Cut and Reductions March 2
    The class NP March 9, March 16
    NP-completeness I March 30
    NP-completeness II April 6
    The Grand Theory of Computation - I April 20
    The Grand Theory of Computation - II April 22
    P vs. NP April 29

  7. Quizzes, Exams and Notes

  8. Notes Date
    Homework I January 28
    Homework II March 1
    Homework III March 31
    Homework IV April 27