There are no textbooks covering a majority portion of the material we will be studying in this class. Roughly 20% of the material is covered in the lecture notes from another version of this course, by Prof. Michel Goemans.

The following papers are related to the second lecture:

Buy at MIT Press Cormen, Leiserson, Rivest, and Stein. Introduction to Algorithms. 2nd ed. Cambridge, MA: MIT Press, 2001. ISBN: 0262032937.

Ahuja, Magnanti, and Orlin. Network Flows. Upper Saddle River, NJ: Prentice Hall, 1993. ISBN: 013617549X.

Motwani and Raghavan. Randomized Algorithms. Cambridge, UK: Cambridge University Press, 1995. ISBN: 0521474655.

Gusfield, Dan. Algorithms on Strings, Trees, and Sequences: Computer Science and Computational Biology. Cambridge, UK: Cambridge University Press, 1997. ISBN: 0521585198.

Borodin, Allan, and Ran El-Yaniv. Online Computation and Competitive Analysis. Cambridge, UK: Cambridge University Press, 1998. ISBN: 0521563925.

Tarjan, Robert. Data Structures and Network Algorithms. Philadelphia, PA: Society for Industrial and Applied Mathematics, 1983. ISBN: 0898711878. A classic - no longer up to date, but outstanding writing.

Berg, Mark de, Marc van Kreveld, Mark Overmars, and Otfried Schwarzkopf. Computational Geometry: Algorithms and Applications. New York, NY: Springer-Verlag, 2000. ISBN: 3540656200.

Hochbaum, Dorit, ed. Approximation Algorithms for NP-Hard Problems. Boston, MA: PWS Publishing Company, 1997. ISBN: 0534949681.