CSE 3500:  Algorithm and Complexity, Spring 2011,  Instructor: Yufeng Wu
Tentative Class Schedule (subject to change)

Week
Lectures
Homework
1
1/18. Stable matching problem: a motivating example
1/20. Basics of algorithm analysis.

2
1/25. Asymtotic notations.
1/27. Common running time.
HW1. Stable matching, asymtotic notations and basic analysis amd more.
3
2/1.  Divide and conquer.
2/3.  Divide and conquer (cont.)

4
2/8.  Probabalistic analysis.
2.10. Heapsort.
HW2. Divide and conquer and probabilistic analysis
5
2.15. Quicksort, radix sort and counting sort.
2.17. Midterm exam 1.

6
2.24. Data structure and algorithms.
2/26. Greedy algorithms.
HW3. Sorting and applications
7
3/1. Greedy algorithm and dynamic programming.
3/3. Dynamic programming (cont.)

8
3/15. Dynamic programming (cont.)
3/17. More dynamic programming
HW4. Greedy algorithm and dynamic programming
9
3/22. Basic graph algorithms: BFS and DFS
3/24. More DFS and its applications.

10
3/29. Midterm exam 2.
3/31.
Minimum spanning tree. (MST)
HW5. Basic graph algorithms and MST.
11
4/5. Shortest path.
4/7. Introduction to randomized algorithms.

12
4/12. Algorithms with numbers.
4/14. Concept of NP completeness.
HW6. Shortest path and more.
13
4/19. NP problems.
4/21. NP completeness: proofs.

14
4/26. NP completeness: proofs
4/28. Cope with NP completeness: heuristics, speical instances and approximation.
HW7. NP completeness.
15
Final exam.