513 Fall 2005 Course Information


Time: TTh 3:20pm-4:40pm
Place: HLL-120
Professor: M. Farach-Colton
Office Hours: T 1:30pm-3:00pm
TA: Miguel Mosteiro

Recommended Text: Cormen, Leiserson, Rivest and Stein, Introduction to Algorithms, MIT Press.
Additional Reading: Garey and Johnson, Computers and Intractability: A guide to the theory of NP-Completeness

Prerequisites: Knowledge of basic concepts of programming and data structures is assumed (e.g. lists, stacks, queues, trees) as well as basic mathematics (e.g. proof by induction, permutations, logarithms, the basics of solving recurances, and asymptotic (i.e. "big-oh", "big-omega") notation). A general background in undergraduate algorithms: sorting upper and comparison model lower bounds, MST algorithms, shortest paths, etc.

Course Contents: Fundamental techniques for designing efficient combinatorial algorithms and mathematical methods for analyzing their complexity.


Tenative list of topics: (Note that the list of topics may vary according to the background of the students.)
Grading Policy: There will be two midterms and a final exam. Each midterm is worth 25% of the final grade. The final will weigh 45% of the final grade. All tests are cummulative. Weekly homework assignments will constitute the remaining 5% of the final grade.

The homework assignments are mathematically oriented and involve derivations of mathematical equations, proofs of combinatorial theorems and running time analysis of combinatorial algorithms. 80% of the assigned homework will be used to compute the homework grade. Homework is to be done independently. Students are encouraged to disscuss general course material with their classmates, the TA or the instructor, but specific homework problems may not be written collaboratively. NO LATE HOMEWORK WILL BE ACCEPTED.


Homework 1 Due Sept 8th.

Exam 1: October 11. Here is a sample test. It's the actual first midterm from '95. Obviously, we haven't covered exactly the same topics this year as then, and so the test covers some topics you won't recognize, like Fibonacci Heaps. But it should give you a good idea of what an exam will look like.
Exam 2: November 17
Final: December 15