Note: problem sets and problem set solutions are off-line
Staff:
Prerequisites: W3139 (Algorithms and Data Structures) and W3203 (Discrete Mathematics).
Very short description: Introduction to the design and analysis of efficient algorithms. Topics covered include: models of computation, efficient sorting and searching, algorithms for algebraic problems, graph algorithms, dynamic programming, probabilistic methods, and NP-completeness.
Textbook:
Grades will be determined by: 55% Homeworks (6 assignments, the worst grade will be dropped), 20% midterm, 25% final.
Past
| Day | Topic | Reading | Homework |
| Sept. 7 | Introduction, models of computation, lower bounds | 1, 9.1, notes | |
| Sept. 9 | Divide and conquer, Master theorem | 4.3, 4.4, 10.1 | Pset 1 out |
| Sept. 14 | Linear time median | 10.3 | |
| Sept. 16 | Hurricane -- no lecture | ||
| Sept. 21 | Probability | 6, notes, 10.2 | |
| Sept. 23 | Sorting in linear time | 9.2, 9.3, 9.4 | |
| Sept. 28 | Data structures, introduction. Hashing | 12 | Pset 1 in, Pset 2 out |
| Sept. 30 | Randomized hashing | 12.3.3, notes | |
| Oct. 5 | More Hashing, Binomial heaps | 13, 20 | |
| Oct. 7 | Amortization | 18 | |
| Oct. 11 | Fibonacci heaps | 21 | Pset 2 in, Pset 3 out, Practice midterm out |
| Oct. 12 | No lecture (moved to Oct. 11) | ||
| Oct. 14 | No lecture (moved to Oct. 11) | ||
| Oct. 19 | Midterm | ||
| Oct. 21 | Graphs, introduction. | 23.1, 23.2, 23.3 | |
| Oct. 26 | Topological Sort. Shortest paths. | 23.4, 25.1, 25.2, 25.4 | Pset 3 in, Pset 4 out |
| Oct. 28 | Max flow | 27.1, 27.2 | |
| Nov. 2 | Election day -- no lectures | ||
| Nov. 4 | Max Flow/Min Cut theorem, randomized min cut | 27.3 | |
| Nov. 9 | Matching, Dynamic programming | 16.2, 26.2 | Pset 4 in, Pset 5 out |
| Nov. 11 | Dynamic programming | notes | |
| Nov. 16 | Dynamic programming, NP-completeness | 36.1, 36.2 | |
| Nov. 18 | NP-complete problems | 36.3 | |
| Nov. 23 | NP-complete problems | 36.4 | Pset 5 in, Pset 6 out |
| Nov. 25 | Thanksgiving -- no lectures | ||
| Nov. 30 | NP-complete problems | 36.5 | |
| Dec. 2 | Number-theoretic algorithms | 33.1, 33.2, 33.3, 33.4, 33.6 | |
| Dec. 3 | RSA encryption | 33.7 | |
| Dec. 7 | Primality testing | 33.8 | Pset 6 in |