CS 577: Introduction to Algorithms CS&S 1221 MWF 1:20-2:10PM Fall 2010

Lecture schedule  Date Lec # Topic Readings/Notes/Slides Handouts/Other Info 9/3 1 Intro; Computing Fibonacci numbers info, §2 HW0 out 9/8 2 Divide & Conquer algorithms: searching and sorting §2, §5.1, §5.2, notes Sol0 out 9/10 3 D&C: counting inversions, selection §5.3 , demo 9/13 4 D&C: linear time selection notes, demo 9/15 5 D&C: selection (contd.), multiplication §5.5, §5.6 HW1 out 9/17 6 Fast Fourier Transform §5.6 9/20 7 D&C: FFT contd. §5.6 9/22 8 Basic graph algorithms & connectivity: BFS, DFS §3.1, 3.2, 3.5, 3.6, demo HW1 due, HW2, Sol1 out 9/24 9 Graph traversal (contd.) §3, demo 9/27 10 Shortest paths, greedy algorithms §4.4, demo 9/29 11 Shortest paths contd., Greedy algorithms: interval scheduling §4.4, 4.1 HW2 due, HW3, Sol2 out 10/01 12 Greedy algorithms: interval scheduling contd. §4.1, demo 10/04 13 Minimum spanning trees §4.5, 4.6, demos: Kruskal's, Prim's 1, Prim's 2 10/06 14 MSTs (contd.) §4.5, 4.6 HW3 due, HW4, Sol3 out 10/08 15 Huffman codes, Greedy algorithms wrap-up §4.8, demo 10/11 16 Huffman codes (contd.), Dynamic Programming §6.1, 6.2 10/13 17 DP: Weighted interval scheduling §6.1, 6.2, demo HW4 due, Sol4 out 10/15 18 Knapsack §6.4 HW5 out 10/18 19 Sequence alignment §6.6 10/20 20 String matching notes 10/22 21 String matching (contd.), Shortest paths revisited notes, § 6.8 HW5 due, Sol5 out 10/25 -- No lecture; midterm in the evening Midterm solutions 10/27 22 Shortest paths (contd.) § 6.8, 6.9, notes 10/29 23 Shortest paths (contd.); make-up midterm in the evening § 6.8, 6.9, 6.10, notes 11/01 24 Network flow § 7.1 11/03 25 Ford-Fulkerson algorithm § 7.1, 7.2 HW6 out 11/05 26 Ford-Fulkerson fast implementation, maximum matching § 7.3, 7.5 11/08 27 Extensions and applications of network flow § 7.5, 7.6, 7.7 11/10 28 Extensions and applications of network flow § 7.6-7.10 HW6 due, HW7, Sol6 out 11/12 29 Network flow wrap-up § 7.10-7.11 11/15 30 Randomized algorithms: global min-cut § 13.1, 13.2, 13.12 11/17 31 Karger's algorithm § 13.2, 13.12 HW7 due, HW8, Sol7 out 11/19 32 Randomized selection and quicksort § 13.3, 13.5 11/22 33 Quicksort (contd.), Hashing § 13.5, 13.6 11/24 34 Coupon collection, records, and load balancing HW8 due, HW9, Sol8 out 11/29 35 Hashing contd. § 13.6 HW9 out 12/01 36 Reductions and computational tractability § 8.1, 8.3 12/03 37 The classes P and NP § 8.2, 8.3 12/06 38 NP-Completeness, Satisfiability § 8.2, 8.4 HW9 due, HW10, Sol9 out 12/08 39 Some NP-Complete problems: 3-SAT, VC, IS § 8.2, 8.6 12/10 40 Some NP-Complete problems: Coloring, Hamiltonian path § 8.7, 8.5