CS 577: Introduction to Algorithms Chem B371 TR 1:00-2:15PM Spring 2012

Course info
Lectures
Homeworks
Staff Schedule
Piazza

NEW (5/1/12): Please see a note on Piazza for an update to HW7.

Online discussion site: We will conduct discussions via Piazza.

The following is a tentative list of topics and a collection of material relevant to lectures. More information and links will be added as the semester proceeds.

 Date Lec # Topic Readings/Notes/Slides Handouts/Other Info 1/24 1 Intro; Computing Fibonacci numbers §2 1/26 2 Divide & Conquer algorithms: searching and sorting §2, §5.1, §5.2 1/31 3 D&C: counting inversions; Randomized D&C: quicksort §5.3, §13.3, §13.5, demo 2/2 4 Analysis of quicksort; More on random variables and expectation §13.3, §13.5 2/7 5 Linear-time selection: randomized and deterministic §13.5, demo, notes HW1 out 2/9 6 Selection (continued), Conditional probability and expectation §13.5, §13.12 2/14 7 Hashing §13.6, §13.12 HW2 out, HW1 due 2/16 8 Basic graph algorithms & connectivity: BFS, DFS §3.1-3.3, demos: DFS, BFS 2/21 9 Shortest paths in graphs, greedy algorithms §4.4, demo: Dijkstra's algo HW3 out, HW2 due 2/23 10 Greedy algorithms: interval scheduling, minimum spanning trees §4.1 2/28 11 Greedy algorithms: Minimum spanning trees §4.5, §4.6, demos: Kruskal, Prim-1, Prim-2 HW-P1 out, HW3 due 3/1 12 Greedy algorithms: MST (contd.), Huffman codes §4.5, §4.8, demo: Huffman 3/6 13 Greedy algorithms: Huffman codes (contd.) §4.8 3/8 14 Dynamic Programming: Weighted interval scheduling §6.1, §6.2, demo: Weighted interval scheduling 3/13 15 DP: longest increasing subsequence, sequence alignment §6.2, §6.6 HW-P1 due 3/15 16 Midterm review Questions on Piazza 3/20 17 DP: Knapsack §6.4 HW4 out 3/22 18 DP: Shortest paths revisited §6.8, §6.10, notes 3/27 19 D&C: multiplication & fast Fourier transform § 5.5, § 5.6 HW-P2 out, HW4 due 3/29 20 D&C: Fast Fourier Transform § 5.6 4/10 21 Network flow § 7.1 4/12 22 NF: Ford-Fulkerson algorithm, max-flow min-cut theorem § 7.1, 7.2 4/17 23 Fast Ford-Fulkerson, Applications of network flow: matching § 7.3, 7.5 HW5 out, HW-P2 due 4/19 24 Extensions and applications of network flow § 7.6-7.10 4/24 25 Linear Programming Notes on Piazza HW6 out, HW5 due 4/26 26 Reductions and computational tractability, the classes P and NP § 8.1, 8.3 5/1 27 NP-Completeness, Satisfiability § 8.2, 8.3 HW7 out, HW6 due 5/3 28 Guest lecture: dealing with intractability 5/8 29 Some NP-Complete problems I 5/10 30 Some NP-Complete problems II HW7 due