Building on undergraduate CS300 (Introduction to Algorithm), the graduate-level course CS500 discusses the design of advanced algorithms and analyzes their behaviour with respect to various notions of performance such as worst-case, amortized, expected, and competitive. Their practical impact is demonstrated in selected implementations.
Lectures: classroom #309 in building E11 (Creative Learning)
Schedule: Tuesdays and Thursdays 2:30pm to 3:45pm
Teaching Assistants: 박세원, 이원영, 임준성, 최규현
Office hours: Tuesdays 4pm to 5:30pm and from 6:30pm, E3-1 #1434
Attendance: 10 points for missing less than 5 lectures, 9 when missing 5 lectures, 8 when missing 6, and so on: 14 or more missed lectures earn you no attendance points.
Grading: The final grade will (essentially) be composed as follows:
Homework 20%, Midterm exam 30%, Final exam 40%, Attendance 10%.
≥95% for A+, ≥90% for A0, ≥85% for A-, ≥80% for B+, ≥75% for B0, ≥70% for B-, ≥65% for C+, ≥60% for C0: GPA=3.11
Exams: There will be a midterm exam on April 21
and a final exam on June 16,
both from 13h00 to 15h00 in E11 #309 (student ID ≥ 20163025) and #311 (student ID < 20163025)
Guest tutorial by Professor Neil Immerman on Descriptive Complexity on May 10 and 12 (section 5)!
PhD qualifying exam problems from Jul 1, 2016 and from Jan 13, 2017