
Brief Course Description
This course introduces basic tools and techniques for the design and
analysis of computer algorithms. Topics include asymptotic notations and
analysis, greedy algorithms, divide and conquer, dynamic programming,
network flows, NPcompleteness, approximation algorithms, and randomized
algorithms. For each topic, beside indepth coverage, one or more representative
problems and their algorithms shall be discussed.
In addition to the design and analysis of algorithms, students are expected
to gain substantial discrete mathematics problem solving skills essential
for computer engineers.

Prerequisites
Data Structures (CSE250), Calculus II, and a course that requires formal
proofs.

Place and Time: Tuesdays
and Thursdays 6:30 pm  7:50 pm, 109 Knox (map)
 Spring 2007 
Class Syllabus

Teaching staff and related info
 Instructor
 Dr. Hung Q. Ngo ( hungngo [at] cse [dot] buffalo
[dot] edu )
 Office Hours: Tuesdays 13pm at 238 Bell Hall. Generally, you
could stop by any time if my door is opened. If the door is closed,
then either I'm not in or I do not wish to be disturbed. However,
please try your best to come during office hours. For questions
that other students might potentially be interested in, please use
the class news group at sunyab.cse.531,
it is also more efficient that way.
 Teaching Assistant 1 (arbitrarily numbered)
 Mr. Yang Wang
 Office Hours: Fridays 11am01pm, Trailer B14
 Recitation Section: R1 (M 1:00 PM  1:50 PM, 250 Park),
R2 (W 9:00 AM  9:50 AM, 106 TALBRT)
 Teaching Assistant 2 (arbitrarily numbered)
 Ms. ThanhNhan Nguyen
 Office Hours: Tuesdays 8:30am10:30am, Trailer B14
 Recitation Section: R3 (R 8:30 AM  9:20 AM, 214 NORTON),
R4 (T 5:00 PM  5:50 PM, 102 CLEMEN)

Required Textbook
 Jon Kleinberg, Éva Tardos, Algorithm Design, 864 pages,
Addison Wesley, ISBN10: 0321295358, ISBN13: 9780321295354, March
16, 2005.

Reference books: helpful, but not required.
 Donald
Knuth, The Art of Computer Programming Volumes 1, 2, 3, Addison
Wesley.
 Alfred V. Aho John E. Hopcroft Jeffrey Ullman, Data Structures
and Algorithms, 427pp. ISBN: 0201000237, Addison Wesley, January
1983.
 Thomas
H. Cormen, Charles
E. Leiserson, Ronald
Rivest, and Clifford
Stein, Introduction to Algorithms (2e), 1180pp, ISBN: 0262032937,
MIT Press, September
2001.
 Vijay Vazirani, Approximation Algorithms, SpringerVerlag,
397 pages hardcover, ISBN: 3540653678, published 2001.
 Rajeev Motwani and Prabhakar Raghavan, Randomized Algorithms,
492 pages, Cambridge University Press (August 25, 1995), ISBN: 0521474655
 Michael R. Garey and David S. Johnson, Computers and Intractability:
A Guide to the Theory of NPCompleteness, 338pp. ISBN: 0716710455,
W. H. Freeman Company, November 1990.

