Algorithms, Summer 2006 - Syllabus