2007 CS 38 Introduction to Algorithms
Instructor: K. Mani Chandy Teaching Assistant: Jing Chen Teaching Assistant: Concetta Pilotto Teaching Assistant: Agostino Capponi
 | This course is an introduction to algorithms. Classes are held in Jorgensen 72 on Tuesdays and Thursdays from 10:30 AM to 11:45 AM.
Classes are highly interactive. Generally, a class consists of the specification of a problem by an instructor followed by an active discussion among students about methods of solving the problem. Active class participation is strongly encouraged.
The class is organized around methods of algorithm development. Examples of such methods include dynamic programming, greedy algorithms, and divide and conquer.
A focus of the course is proofs of algorithms. For most algorithms we will develop algorithms around an invariant, and we will prove progress and computational complexity using variant functions.
The text for the course is Algorithms by Dasgupta, Papadimitriou and Vazirani. Copies will be available at the bookstore and on reserve at the library.
The course has weekly 10-minute mini-quizzes, 5 or 6 homework assignments, a midterm and a final exam. The midterm or final may be given as quizzes. None of the assignments require implementing programs. The assignments generally require the development of an algorithm to solve a specified problem and its proof of correctness.
Prerequisites are CS 2 and CS 21 (or equivalent). |