This course provides a mathematically oriented introduction to algorithm design. Students will become familiar with fundamental paradigms in algorithm design such as divide-and-conquer, dynamic programming, graphs/networks, optimization, and hardness/approximations. Evaluation will be through written, proof based, homeworks and tests.
Mon Aug 21 | Quick introduction, optional due to solar eclipse | notes slides |
---|---|---|
Wed Aug 23 | Sorting, runtimes, recursive algorithms, and master theorem | notes slides (2.2, 2.3 in book) |
Mon Aug 28 | Fast multiplication of integers | notes slides (2.1, 2.2 in book) Homework 1 out |
Wed Aug 30 | Recursion trees | notes slides |
Mon Sep 4 | No lecture due to labor day | |
Wed Sep 6 | More Recursive Algorithms | notes slides Homework 1 due (solutions) |
Mon Sep 11 | Class cancelled due to Hurricane Irma | |
Wed Sep 13 | Intro to dynamic programming | notes slides (6.1 of book) |
Mon Sep 18 | Longest increasing subsequences + Test 1 Review | (6.1, 6.2 of book) notes slides |
Wed Sep 20 | Test 1 | test with solutions |
Mon Sep 25 | Shortest paths | (4.2, 4.4 of book) notes slides |
Wed Sep 27 | Minimum spanning trees | (5.1 of book) notes slides Homework 2 out |
Mon Oct 2 | Knapsack and All Pairs Shortest Path | notes slides (6.4, 6.6 of book) |
Wed Oct 4 | Chain Matrix Multiplication + Review of Cut Rule | notes slides (6.5 of book) |
Mon Oct 9 | No lecture due to fall recess | |
Wed Oct 11 | Intro to linear programming, graph problems as linear programs | notes slides (7.1 of book) Homework 2 due (solutions) |
Mon Oct 16 | Review of dynamic programming / graph algorithms | notes |
Wed Oct 18 | Test 2, location: CoB 100 AND Howey L4. | test with solutions |
Mon Oct 23 | Introduction to maximum flows | notes slides (7.1, 7.2 of book) |
Wed Oct 25 | Flow algorithms, maxflow / mincut | notes slides (7.2 of book) Homework 3 out |
Mon Oct 30 | Proof and applications of maxflow/mincut | notes slides (7.3 of book) |
Wed Nov 1 | Matchings and vertex covers | notes slides (7.3 of book) |
Mon Nov 6 | Search Problems, P, and NP | notes (8.1 and 8.2 of book) Homework 3 due (solutions) |
Wed Nov 8 | Reductions and NP-Completeness | notes slides (8.2 of book) |
Mon Nov 13 | Review of maxflow and optimization | (Review notes for test 3) |
Wed Nov 15 | Test 3 | test with solutions |
Mon Nov 20 | Approximation algorithms | (8.3 and 9.2 of book) notes slides Homework 4 out |
Wed Nov 22 | No lecture due to Thanksgiving | |
Mon Nov 27 | Hardness and approximation of max-cut | (8.3 and 9.2 of book) notes slides |
Wed Nov 29 | Hardness and approximation of knapsack | (8.3 and 9.2 of book) notes slides |
Mon Dec 4 | *Review / randomized algorithms | notes Last lecture, Homework 4 due |
Mon Dec 11 | Final exam, 2:50pm - 5:40pm | exam with solutions |