Spring 2012
CS581 home page | Syllabus | Schedule/Readings | Homework Assignments | Piazza Discussions | Exam Study Guides |
Date | Topics | Readings | HW Assigned | HW Due |
Thurs. 1/12 | Introduction Asymptotic notation |
Ch. 1, 3 |
HW 1 | |
Tues. 1/17 | Divide and Conquer: Mergesort Recurrences Recursion tree method |
Ch. 2, 4.0, 4.4 |   | |
Thurs. 1/19 | Master method Divide and Conquer (con't.): Matrix multiplication Strassen's algorithm for matrix multiplication |
Ch. 4.2, 4.5 | HW 2 | HW 1 |
Tues. 1/24 |
Divide and Conquer (con't.) Maximum subarray problem Introduction to Dynamic Programming Rod cutting |
Ch. 4.1, Ch. 15.1 | ||
Thurs. 1/26 | Dynamic Programming (con't.): Matrix-chain multiplication |
Ch. 15.2 | HW 3 | HW 2 |
Tues. 1/31 | Dynamic Programming (con't.) Elements of dynamic programming Longest common subsequence |
Ch. 15.3 - 15.4 | ||
Thurs. 2/02 | Dynamic Programming (con't.): Optimal binary search trees |
Ch. 15.5 |
HW 4 | HW 3 |
Tues. 2/07 | Review of Graph Algorithms Dijkstra's (greedy) algorithm for SSSP | Ch. 22, 24.0, 24.2, 24.3 |   | |
Thurs. 2/09 |
Dynamic Programming (con't.): All-pairs shortest path |
Ch. 25.1 | HW 5 | HW 4 |
Tues. 2/14 |
Dynamic Programming (con't.): Floyd-Worshall Algorithm Assembly line scheduling |
Ch. 16.2 | ||
Thurs. 2/16 |
Greedy Algorithms Introduction Activity Selection Elements of greedy strategy Knapsack problems | Ch. 16.1, 16.2 | HW 5 | |
Tues. 2/21 |
Exam 1 (covers material through Dyn. Pgmg. & HW 1-5) |
|||
Thurs. 2/23 | Review exam #1 solutions Greedy Algorithms (con't.) Huffman Codes | Ch. 16.3 | HW 6 | |
Tues. 2/28 |
Greedy Algs (con't.): Data Structures for Disjoint Sets Minimum Spanning Trees |
Ch. 21, 23 |   | |
Thurs. 3/01 | Greedy Algs (con't.): Minimum Spanning Trees (con't.) Maximum Flow |
Ch. 23, Ch. 26.1 | HW 7 | HW 6 |
Tues. 3/06 | Greedy Algs (con't.): Maximum Flow (con't.) |
Ch. 26.2 | ||
Thurs. 3/08 | Computational Geometry Line-segment properties Segment intersections |
Ch. 33.1-33.2 | HW 8 | HW 7 |
Tues. 3/13 | (No class, due to EECS IAB Meeting) | |||
Thurs. 3/15 | Computational Geometry (con't.) Convex hull |
Ch. 33.3 | HW 9 | HW 8 |
Tues. 3/20 | No class; spring break | |||
Thurs. 3/22 | No class; spring break | |||
Tues. 3/27 | Computational Geometry (con't.) Finding closest pair of points Number Theory/Encryption RSA public-key cryptosystem Elementary number theory | Ch. 33.4 Ch. 31.7, 31.1 |
||
Thurs. 3/29 | Number Theory/Encryption (con't.) Greatest common divisor Modular arithmetic Euler's phi function Solving modular linear equations Powers of an element RSA encryption examples | Ch. 31.2, 31.3, 31.4, 31.6 | HW 9 | |
Tues. 4/03 | Exam 2 (covers material on
greedy algs. thru computational geometry, HW 6-9) |
HW 10 | ||
Thurs. 4/05 | Review Exam #2 Multithreaded Algorithms Introduction |
Ch. 27.1 | ||
Tues. 4/10 | Multithreaded Algorithms (con'.t) Multithreaded matrix multiplication |
Ch. 27.2 | ||
Thurs. 4/12 | Multithreaded Algorithms (con'.t) Multithreaded merge sort NP-completeness Introduction |
Ch. 27.3 Ch. 34 intro. |
HW 11 | HW 10 |
Tues. 4/17 |
NP-completeness (con't.) Complexity classes P and NP | Ch. 34 intro. |   |   |
Thurs. 4/19 | NP-completeness (con't). Reducibility Circuit-SAT | Ch. 34.1-34.3 | HW 12 | HW 11 |
Tues. 4/24 | NP-completeness (con't.) SAT 3-CNF-SAT Clique Vertex Cover |
Ch. 34.4-34.5 | ||
Thurs. 4/26 | Approximation Algs. Introduction Approx. for Vertex Cover TSP approximation |
Ch. 35.0-35.2 | HW 12 | |
Thursday, 5/03 2:45 - 4:45 PM |
Final Comprehensive Exam (with primary emphasis on last 1/3 of class) |