Topic Outline

Here is a tentative topic outline for the course:

       Greedy Algorithms - 2 weeks
       Dynamic Programming - 2 weeks
       Network Flows and Reductions - 2 weeks
       Linear Programming - 2 weeks
       Introduction to Complexity Theory - 2 weeks
       Approximation Algorithms and Randomization - 2 weeks
Weekly Readings (R), Lecture Notes (LN), and tutorials (TT)