Advanced Algorithms :: CS 356T :: Fall 2011


announcements :: acknowledgement

Contact Information

Professor: Brent Heeringa
Email: heeringa [at] cs [dot] williams [dot] edu
Office: Thompson Chemistry Laboratory 306
Phone: 413.597.4711

Course Information

Course Classroom: Thompson Chemistry 306 (my office)
Office Hours: Monday evenings from 20.00-22.00

Course Description

From the course catalog:

This course explores advances in algorithm design, algorithm analysis and data structures. The primary focus is on randomized and approximation algorithms, randomized and advanced data structures, and algorithmic complexity. Topics include combinatorial algorithms for cut, packing, and covering problems, linear programming algorithms, approximation schemes, hardness of approximation, random search trees, and hashing.

A shorter, but still appropriate description might be some cool and often recent results about which I'm interested in learning more.

Course Grading

Let's keep it simple. There are 12 tutorial meetings. I'll grade the work you present at each meeting on completeness, clarity, and comprehension. Your course grade will be the average of your weekly grades.

Course Expectations

Each week there will be a handout containing a topic accompanied by readings, questions, problems, and coding.

Week 1: The Predecessor Problem and Treaps

Week 2: The Predecessor Problem and van Emde Boas Trees

The following handouts are required reading: You might also be interested in reading (but are certainly not required to read) the original van Emde Boas tree paper

Week 3: The Potential Method, Pairing and Skew Heaps, and Splay Trees

Week 4: Dynamic Optimality

The following handout and papers are required reading:

Week 5: Matchings

Week 6: A PTAS for TSP

The following handouts are required reading: I also recommend Finally, you may also want to read the documentation for TSPLIB.

Week 7: Matroids

The following handouts are required reading:

Week 8: Introduction to the PCP Theorem

Week 9: Soft Heaps

Week 10: Linear Programming

Week 11: Invetigation

Week 12: Server Problems and Online Analysis

Course Links and Ephemera

Acknowledgement

The development of this course was generously sponsored in part by