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,
reduction to network flow, and the use of randomness. 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.
Jon Kleinberg and Eva Tardos, Algorithm Design, Addison-Wesley, 2005.
T. Cormen, C. Leiserson, R. Rivest, and C. Stein,
Introduction to Algorithms, 2nd edition, 2001.
K. Rosen, Discrete Mathematics and its Applications,
4th edition, 2003.
CS 240 (Discrete Mathematics), and CS 367 (Data Structures).
All exams are closed book and closed notes. However, you will be allowed to bring a "cheat-sheet".
- Midterm (20%). T 10/21 7:15 p.m. - 9:15 p.m.
- Final (30%). M 12/15 12:25 p.m. - 2:25 p.m.
- Point distribution. The points distribution for final
grades is as follows: homework (50% - 10x5; the lowest
homework score will be dropped), midterm (20%), final (30%).
- Homeworks. There will be 6 homeworks, roughly every two
weeks. Homework release dates and due dates are posted here. We will drop the lowest homework score from
consideration when tallying each student's final score.
- Collaboration policy. Homework may be done and submitted in
pairs. You may not consult any material other than your lecture notes
and the course text or reference books. In particular, the use of
materials (such as homework solutions) from previous versions of the
course or from the Internet is considered plagiarism and will warrant
strict action in accordance with university policy.
- Lateness policy. Each homework is due at the beginning of
the lecture on the due date. No extensions will be given on the due
date. However, we will drop each student's lowest homework score
- Extra credit questions and discussion on Piazza. Several of
the homeworks will contain extra credit questions. These questions
have no points associated with them. However, we will keep a record of
how many questions each student (or team) solves correctly. At the end
of the semester, your performance on these questions may help your
letter grade if your total score is close to the boundary between two
grades. Your participation on the online discussion site Piazza may similarly help
your letter grade.
Office: || CS 4373
Phone: || x0027
Email: || shuchi (AT) cs (DOT) wisc (DOT) edu
Lectures: || MWF 9:55 a.m. - 10:45 a.m. in Noland 168
Office hours: || W 11:00 a.m. - noon, R 2:00 p.m. - 3:00 p.m.,
and by appointment in CS 4373
Office: || CS1304
Email: || prakriya (AT) cs (DOT) wisc (DOT) edu
Review sessions: || MR 6:00 p.m. - 7:00 p.m. in CS 1221.
Office hours: || T 5:00 p.m. - 6:00 p.m. and F 2:30 p.m. - 3:30 p.m. in CS 1304.