CS 577 - Introduction to Algorithms
Fall 2015 |
|
Course Description
This course provides an undergraduate-level introduction to the design and
analysis of algorithms.
The main focus lies on techniques for constructing correct efficient
algorithms and on tools to reason about them. Design paradigms include greed,
divide-and-conquer, dynamic programming, reductions, and randomness (time
permitting).
A second focus point is computational intractability. NP-complete problems
are covered, as well as ways to deal with them.
The course forms a foundation for all areas of computer science. The
particular computational problems discussed have applications in
artificial intelligence, computational biology, compiler construction,
hardware and network protocols, and optimization.
Text
The recommended text is:
Jon Kleinberg and Eva Tardos, Algorithm Design, Addison-Wesley, 2006.
Lecture notes for the course are being developed.
Drafts will be made available as soon as possible.
Prerequisites
CS 240 (Discrete Mathematics) and CS 367 (Data Structures)
Staff
Check out the course calendar below for
office hours and locations.
Lectures
- Section 1: TR 1:00-2:15pm in Noland 168
- Section 2: TR 2:30-3:45pm in Noland 168
Review Sessions
MT 7:15-9:15pm in CS 1240
More Info
- Moodle: lecture schedule, assignments, other course materials, and grades.
- Piazza:
on-line discussions.
|