CSE 331: Introduction to Algorithm Analysis and Design
|Phone:|| (716) 645-2464|
|Office:|| 123 Bell |
|Office Hours:||Mon, Fri 2:00pm- 2:50pm ||
|Office:|| 232 Bell|
|Office Hours:|| Wed 2:30-3:20pm|
|Office:|| 232 Bell|
|Office Hours:|| Tue, Thu 4:00-4:50pm||
Monday, Wednesday, Friday. 1:00-1:50pm.
Monday, 9:00-9:50am (19 CLEMEN).
Monday, 11:00-11:50am (90 ALUMNI).
Tuesday, 8:00-8:50am (138 BELL).
Previous Offering: Fall 09
We will be using a blog for the
course in lieu of a course newsgroup. All announcements will be made on the blog.
If you are attending the course,
you must check the blog regularly (and consider subscribing to the
RSS feed or signing up for email notifications).
Important: Please refer to this document for homework policies.
- Homework 0. (Do not turn in) [Solutions]
- Homework 1. (Due: Friday, Sep 17 except Q3 , which is due Sep 24)
- Homework 2. (Due: Friday, Sep 24)
- Homework 3. (Due: Friday, Oct 1)
- Homework 4. (Due: Friday, Oct 8)
- Homework 5. (Due: Friday, Oct 15)
- Homework 6. (Due: Friday, Oct 29)
- Homework 7. (Due: Friday, Nov 5)
- Homework 8. (Due: Friday, Nov 12)
- Homework 9. (Due: Friday, Nov 19)
- Homework 10. (Due: Friday, Dec 10)
We will be using the following textbook:
Occasionally, we might cover topics outside of the textbook: in such cases,
supplementary material will be provided.
The following references could also be useful
We will have roughly 13 weeks worth of classes. Here is a tentative
list of topics that we will cover (KT refers to the textbook):
H. Cormen, Charles
E. Leiserson, Ronald
Rivest, and Clifford
Stein, Introduction to Algorithms (2e).
- Sanjoy Dasgupta, Christos H. Papadimitriou and Umesh Vazirani, Algorithms. (McGraw Hill, 2007)
Knuth, The Art of Computer Programming Volumes 1, 2, 3, 4. (Addison
- Alfred V. Aho,
John E. Hopcroft and
Jeffrey Ullman, Data Structures
and Algorithms. (Addison Wesley,
- Richard E. Neapolitan and Kumarss Naimipour, Foundations of Algorithms (4e). (Jones and Bartlett, 2009)
- Introduction [KT, Chap 1]-- 1.5 weeks.
- Asymptotic Analysis [KT, Chap 2]-- 1 week.
- Graph Basics [KT, Chap 3]-- 2.5 weeks.
- Greedy Algorithms [KT, Chap 4]-- 3.5 weeks.
- Divide and Conquer Algorithms [KT, Chap 5]-- 2.5 weeks.
- Dynamic Programming [KT, Chap 6]-- 2 weeks.
- NP-completeness and other advanced topics [KT, Chap 8]-- 1 lecture.
We have zero tolerance for cheating and will follow the
CSE Department Policies on Academic Integrity.