CSE 3500:  Algorithms and Complexity
Spring 2010


Instructor: Yufeng Wu

Lecture: Tuesday and Thursday 11:00-12:15 pm, ITE 127.

Office Hour: ITE 235, Tuesday and Thursday 9:30-11:00, or by appointment.
Note: solutions to homeworks and exams will be posted on HuskyCT.

Anouncements.

Course Description. See the Syllabus.

Schedule.

Week
Topics
References
Assignments
14
4/27: NP complete problems.

4/29: How to deal with NP complete problems.
Chapter 34. Slides for the Minesweeper (PDF).

Lecture notes for week 13-14
No assignment this week.
13
4/20: NP complete problems.

4/22: No class.
Chapter 34.
HW12
Due:  4/27.
12
4/13: NP problems.

4/15: NP completeness.
Chapter 34.

Lecture notes for week 12
HW11
Due:  4/20.
11
4/6: MST; shortest path.

4/8: Shortest path; NP-completeness
Chapter 23, 24 and 34.

Lecture notes for week 11
HW10
Due:  4/13.
10
3/30: DFS and topological sort.

4/1: Exam 2, strongly connected component and MST
Chapter 22 and 23.

Lecture notes for week 10
HW9
Due:  4/6.
9
3/23:  Dynamic programming (cont.)

3/25: Basic graph algorithms: BFS and DFS
Chapter 15 and 22.

Lecture notes for week 9
HW8
Due:  3/30.
8
3/16: Dynamic programming.

3/18: Dynamic programming (cont.).
Chapter  15.

Lecture notes for week 8
HW7
Due:  3/23.
7
3/2: Red-black tree (cont.). Greedy algorithm.

3/4: Greedy algorithm.
Chapter 13 and 16.

Lecture notes for week 6 and 7
HW6
Due:  3/16.
6
2/23: Binary search tree and red-black tree.

2/25: Exam 1.
Chapter  12 and 13.
No assignment this week.
5
2/18: Quicsort (cont.). Counting sort.

2/16: Heapsort (cont.). Quicksort.
Chapter 7 and 8.

Lecture notes for week 5

HW5
Due:  2/23.
4
2/11: More probabilistic analysis. Heapsort.

2/9: Probabilistic analysis: the hiring problem and indicator variables
Chapter 5 and 6.

Lecture notes for week 4
HW4
Due:  2/16.
NOTE: you can choose to hand in on 2/18 (with no  penalty). But you should note HW5 will be out on 2/16.
3
2/4: Divide and conquer continued: examples

2/2: Divide and conquer: merge sortt, analysis of recurrences and the Master theorem.

Section 2.3 and Chapter 4. And Section 28.2.

Lecture notes for week 3
HW3
Due:  2/9.
Note: clarification for problem 1 added.
2
1/28: Common running time.

1/26: Asymtotic notations. Worst case running time. Polynomial time algorithm.

Chapter 3.

Lecture notes for week 2
HW2
Due:  2/2
1
1/21: Begining of analysis of algorithms: insertion sort, growth rate. Two more problems as examples.

1/19: Introduction to algorithms. Basic concepts of algorithms: integer addition and multiplication. Compare algorithms.
Chapter 2.

Chapter 1. Appendix A, B and C.

Lecture notes for week 1
HW1
Due:  1/26