CS 577:
Introduction to Algorithms
Fall 2003
General Information


Course Description

This is a first course in the design and analysis of algorithms. The main focus is on techniques for constructing correct and efficient algorithms, and on tools to reason about them. Design paradigms include greed, divide-and-conquer, dynamic programming, and reduction to network flow problems. A second focus point is computational intractability. NP-complete problems are covered, as well as ways to deal with them.

The course forms a foundation for all areas of computer science. The particular computational problems discussed have applications in artificial intelligence, computational biology, compiler construction, hardware and network protocols, and optimization.


Text

Jon Kleinberg and Eva Tardos, Introduction to Algorithms. This is a preprint of a soon-to-be-published book. Copies are available at the DoIT store.


Prerequisites

CS 240 (Discrete Mathematics), and CS 367 (Data Structures) are essential prerequisites. The course catalogue also lists Math 222 (second semester of Calculus) but that prerequisite is not as essential as the other two.

A self-calibration homework will be handed out in the first lecture.


Course Work

  • Homework (50%). There will be biweekly assignments. Expect the problems to be challenging. You are supposed to solve all problems on your own. No sources other than the instructor or the TA are allowed. Model solutions will be handed out during the lecture in which the homework is due, which implies that no late assignments can be accepted.

  • Exams: Midterm (20%) on T 10/28, 7:15pm-9:15, and Final (30%) on T 12/16, 7:45am-9:45. Both exams will be closed book and closed notes.


References

The following book is on reserve in Wendt library:

  • T. Cormen, C. Leiserson, R. Rivest, and C. Stein, Introduction to Algorithms, 2nd edition, 2001. (3-day loan)
In case you need to refresh discrete math, the text book used for Math 240 is also on reserve:
  • K. Rosen, Discrete Mathematics and its Applications, 4th edition, 2003.


dieter@cs.wisc.edu