The course gives a broad introduction the design and analysis of computer algorithms. Topics to be covered include: growth of functions, recurrences, sorting and order statistics, dynamic programming, greedy algorithms, fundamental and advanced data structures, applications of data structures, lower bound techniques, graph searching and graph algorithms, string matching, NP-completeness, approximation algorithms. Detailed syllabus.
Class Times: Monday, Wednesday, Friday, 1:30-2:20pm, HAAS G066
Instructors
Professor S.E. Hambrusch
1179 Lawson, 494-1831; seh@cs.purdue.edu
Office Hours: Monday 2:30-3:30pm, Thursday 3-4pm, or by appointment
Professor G. Pandurangan
1209 Lawson, 494-0916;
gopal@cs.purdue.edu
Office Hours: Wednesday 4-5pm, or by appointment (e-mail possible times)
Teaching Assistants
Yu-Hong Yeung
B132 Lawson,
496-9444, yyeung@cs.purdue.edu
Office hours: Tuesday 3:30-4:30pm, Thursday 6-7pm
Youn Sun Cho
B116D Lawson, 496-9430, cho52@purdue.edu
Office hours: Wednesday 10:20-11:20am
Course Material