.com
Spring 2014
CS581 home page | Syllabus | Schedule/Readings | Homework Assignments | Piazza Discussions | Exam Study Guides |
Date | Topics | Readings | Lecture Notes | HW Assigned | HW Due |
Thurs. 1/09 |
Introduction Asymptotic notation |
Ch. 1, 3 |
Slides-Jan-9 | HW 1 | |
Tues. 1/14 | Divide and Conquer: Mergesort Recurrences Recursion tree method |
Ch. 2, 4.0, 4.4 | Slides-Jan-14 |   | |
Thurs. 1/16 | Master method Divide and Conquer (con't.): Matrix multiplication Strassen's algorithm for matrix multiplication |
Ch. 4.2, 4.5 | Slides-Jan-16 | HW 2 | HW 1 |
Tues. 1/21 |
Divide and Conquer (con't.) Maximum subarray problem Introduction to Dynamic Programming Rod cutting |
Ch. 4.1, Ch. 15.1 | Slides-Jan-21 | ||
Thurs. 1/23 | Dynamic Programming (con't.): Matrix-chain multiplication |
Ch. 15.2 | Slides-Jan-23 | HW 3 | HW 2 |
Tues. 1/28 | Class led by TA; instructor on travel Dynamic Programming (con't.) Elements of dynamic programming Longest common subsequence |
Ch. 15.3 - 15.4 | Slides-Jan-28 | ||
Thurs. 1/30 | Dynamic Programming (con't.): Optimal binary search trees |
Ch. 15.5 | Slides-Jan-30 | HW 4 | HW 3 |
Tues. 2/04 | Review of Heaps, Priority Queues Review of Graph Algorithms SSSP: Bellman-Ford alg. SSSP: Topological sort for DAGs SSSP: Dijkstra's (greedy) alg. | Ch. 6, 22, 24.0-24.3 | Slides-Feb-4 (updated Feb. 6) |
  | |
Thurs. 2/06 |
Dynamic Programming (con't.): All-pairs shortest path Floyd-Worshall Algorithm |
Ch. 25.1 - 25.2 | Slides-Feb-6 | HW 5 | HW 4 |
Tues. 2/11 |
Greedy Algorithms Introduction Activity Selection Elements of greedy strategy Knapsack problems | Ch. 16.1, 16.2 | Slides-Feb-11 | ||
Thurs. 2/13 | Snow Day! |   |   |   | HW 5 (due 2/14, 1PM |
Tues. 2/18 |
Exam 1 (covers material through Dyn. Pgmg. & HW 1-5) |
  | HW 6 | ||
Thurs. 2/20 |
Discuss Exam #1 solutions Greedy Algs (con't.): Huffman Codes Data Structures for Disjoint Sets |
Ch. 16.3, Ch. 21 | Slides-Feb-20 | ||
Tues. 2/25 | Class led by TA; instructor on travel Greedy Algorithms (con't.) Minimum Spanning Trees |
Ch. 23 | Slides-Feb-25 | ||
Thurs. 2/27 | Greedy Algorithms (con't.) Theory behind MSTs Maximum Flow |
Ch. 23 Ch. 26.0-26.2 |
Slides-Feb-27 | HW 7 | HW 6 |
Tues. 3/04 | Greedy Algorithms (con't.) Maximum Flow (con't.) | Ch. 26.0-26.2 | Slides-Mar-4 |   |   |
Thurs. 3/06 | Amortized Analysis | Ch. 17 | Slides-Mar-6 | HW 8 | HW 7 |
Tues. 3/11 | Amortized Analysis (con't.) Multithreaded algorithms |
Ch. 17 Ch. 27.1 |
Slides-Mar-11 |   | |
Thurs. 3/13 | Multithreaded Algorithms (con'.t) | Ch. 27.2 | Slides-Mar-13 | HW 9 | HW 8 |
Tues. 3/18 | No class; spring break |   |   | ||
Thurs. 3/20 | No class; spring break |   | |||
Tues. 3/25 | Multithreaded Algorithms (con't.) | Ch. 27.3 | Slides-Mar-25 |   | HW 9 |
Thurs. 3/27 | Linear Programming Introduction Standard form Slack form |
Ch. 29.1 | Slides-Mar-27 |   | |
Tues. 4/01 | Exam 2 (covers greedy algs. and amortized analysis & HW 6-9) |
HW 10 | |||
Thurs. 4/03 | Discuss Exam #2 solutions Linear Programming (con't.) Formulating problems Simplex method |
Ch. 29.2-29.3 | Slides-Apr-3 | ||
Tues. 4/08 | Linear Programming (con't.) Initial basic feasible solution |
Ch. 29.5 | Slides-Apr-8 |   | |
Thurs. 4/10 | Linear Programming (con't.) Duality |
Ch. 29.4 | Slides-Apr-10 | HW 11 | HW 10 |
Tues. 4/15 | NP Completeness  Overview |
Ch. 34 (intro) -   Ch. 34.3 |
Slides-Apr-15 |   | |
Thurs. 4/17 | NP Completeness (con't.)   Reductions:   SAT   3-CNFSAT   Clique   Vertex-Cover |
Ch. 34.4-34.5 | Slides-Apr-17 | HW 12 | HW 11 |
Tues. 4/22 | NP Completeness Reductions (con't.)   Subset-Sum   Ham-Cycle   TSP Guidelines for NPC proofs |
Ch. 34.5 | Slides-Apr-22 |   | |
Thurs. 4/24 | (Last regular class) NP Completeness (con't.)   Circuit-SAT Brief insights into approx. algs. |
Ch. 34.3 | Slides-Apr-24 | HW 12 | |
Wednesday, 4/30 10:15AM - 12:15PM |
Final Comprehensive Exam (with primary emphasis on last 1/3 of class) |   |