CS 577: Introduction to Algorithms CS&S 1221 MWF 11:00-11:50AM Spring 2010

Lecture schedule  Date Lec # Topic Readings/Handouts Other Info 1/20 1 Intro; Stable matching §1.1, slides, info HW0 out 1/22 2 Stable matching contd. §1.1, slides -- 1/25 3 Basic graph algorithms: BFS, DFS §3.1, 3.2, 3.5, 3.6, demos: BFS, DFS Sol0 out 1/27 4 Graph traversal continued, Shortest paths §3, 4.4, demos: DFS, shortest paths -- 1/29 5 Shortest paths contd., Greedy algorithms §4.4, 4.1, demos: shortest paths HW1 out 2/1 6 Interval scheduling §4.1, demos: interval scheduling -- 2/3 7 Minimum Spanning Trees §4.5, demos: Kruskal, Prim 1, Prim 2 -- 2/5 8 MSTs (contd.), Huffman codes §4.5, 4.6, 4.8, demos: Huffman HW1 due; HW2, Sol1 out 2/8 9 Huffman codes (contd.) §4.8 -- 2/10 10 Divide & conquer algorithms: mergesort 5.1, 5.2, demos: Mergesort -- 2/12 11 Sorting lower bound, counting inversions, selection 5.3, lecture notes, demos: Mergesort, Selection HW2 due, HW3, Sol2 out 2/15 12 Linear time selection lecture notes, demos: Selection Sample quiz 2/17 13 Fast Fourier Transform (FFT) § 5.6 -- 2/19 14 Fast Fourier Transform (contd.) § 5.6 HW3 due, Sol3 out 2/22 Quiz1 Everything up to Lecture 14 §1, 2, 3, 4, 5 -- 2/24 15 Dynamic programming: Weighted interval scheduling § 6.1, 6.2, , demos: Weighted interval scheduling -- 2/26 16 DP: Knapsack § 6.4 HW4 out 3/1 17 DP: Sequence alignment §6.6 -- 3/3 18 String matching lecture notes: string matching -- 3/5 19 String matching (contd.), Shortest paths revisited lecture notes: string matching, shortest paths HW4 due, HW5, Sol4 out 3/8 20 Shortest paths: Bellman-Ford, Floyd-Warshall lecture notes: shortest paths -- 3/10 21 Shortest paths contd. §6.10 -- 3/12 22 Network flow §7.1 HW5 due, Sol5 out 3/15 23 Guest lecture on "Algorithms in the real world" by David Malec -- -- 3/19 Quiz2 Everything up to Lecture 20 §1, 2, 3, 4, 5, 6 -- 3/22 24 Network flow, Ford-Fulkerson algorithm §7.1, 7.2, demos: Max-flow -- 3/24 25 Ford-Fulkerson algorithm (contd.), maximum matching §7.2, 7.5, optional: § 7.3 HW6 out 3/26 26 Extensions to network flow §7.5, 7.6, 7.7 -- 4/5 27 Applications of network flow §7.8, 7.9 -- 4/7 28 Applications of network flow (contd.), randomized algorithms §7, 13.1, 13.12 HW6 due, HW7, Sol6 out 4/9 29 Randomized algorithms: global min-cut § 13.12, 13.2 -- 4/12 30 Min-cut (contd.) § 13.2, 13.3 -- 4/14 31 Randomized sorting and selection § 13.3, 13.5 HW7 due, HW8, Sol7 out 4/16 32 Hashing § 13.6 -- 4/19 33 Hashing (contd.), Closest pair of points § 13.7 -- 4/21 34 Closest pair of points (contd.), Reductions and computational tractability § 8.1, 8.3 HW8 due, HW9, Sol8 out 4/23 35 The classes P and NP § 8.1, 8.3 -- 4/26 36 NP-Completeness and satisfiability § 8.2, 8.4 -- 4/28 37 Some NP-Complete problems: VC, IS, 3-D Matching § 8.2, 8.6 HW9 due, HW10, Sol9 out 4/30 38 Some NP-Complete problems: Coloring, Hamiltonian path § 8.7, 8.5 -- 5/3 39 NP-Completeness wrap-up, Dealing with intractability § 8 -- 5/5 40 Dealing with intractability § HW10 due, sample final out 5/7 41 Review -- --