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, 10:30-11:20, LWSN B155.
FINAL EXAM: Thursday, December 18, 10:20am-12:20pm, ARMS B061
Professor S.E. Hambrusch
1179 Lawson, 494-1831;
Office Hours: Wednesday, Thursday 1-2pm, or by appointment
Office hours: Monday 2-3pm, Wednesday 3-4pm