The required text for the course is Algorithm Design by
Kleinberg and Tardos, (hereafter referred to as "KT"). We will also
be providing lecture notes covering most of the material in this course,
but it is important to have a book to give you more detailed coverage
(as well as an alternative perspective if you cannot understand what
the instructor is saying!).
Specific readings are listed on the course schedule. It is recommended that you
skim the reading before lecture, with a more thorough read afterwards.
Other helpful material can be found in: Data Structures
and Network Algorithms by R. E.
Tarjan, Randomized Algorithms by Motwani and Raghavan, Programming
Pearls by J. Bentley, Introduction to Algorithms: a Creative
Approach by Manber, and the classic Aho-Hopcroft-Ullman book.