CSE 431/531: Algorithms Analysis and Design

Fall 2004
T&R 2:00 pm - 3:20 pm, Place: 322 Clemen

Course Syllabus

Instructor:     Dr. Hung Q. Ngo

            Office: 238 Bell Hall
Office Hours: Thursdays 10:00-12:00am
Phone: 645-3180 x 160
Email: hungngo@cse.buffalo.edu

Teaching Assistants: (in random order)
Mr. Guang Xu
Office: 329 Bell
Office Hours: Wednesday 1:00pm-3:00pm
Email: guangxu@cse.buffalo.edu
Recitations: A2, Wednesday 3:00pm-3:50pm, 220 Clemen Mr. Zhiyong Lin Office: 329 Bell Office Hours: Friday 1:00pm-3:00pm Email: zlin@cse.buffalo.edu Recitations: A1, Friday 11:00am-11:50am, 213 Obrian The TAs will teach recitation (A3, Tuesday 4:00pm-4:50pm, 101 Baldy) alternatively.

Course Description:

This course introduces basic elements of the design and analysis of computer algorithms. Topics include asymptotic notations and analysis, parallel sorting networks, divide and conquer, greedy methods and matroids, dynamic programming, basic graph algorithms, NP-completeness, approximation algorithms, and network flows analysis. For each topic, beside in-depth 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.

Course Objectives:


Data Structures (CSE250), Calculus II, and a course that requires formal proofs.
The desire and ability to learn new ideas quickly.

At the end of this course, each student should be able to:


Class homepage:


Work load:

Grading policy:

Academic Honesty:

Misc. Items: