6.046J | Spring 2012 | Undergraduate

Design and Analysis of Algorithms

Calendar

Assigned readings are from the course textbook:

Buy at MIT Press Cormen, Thomas, Charles Leiserson, Ronald Rivest, and Clifford Stein. Introduction to Algorithms. 3rd ed. MIT Press, 2009. ISBN: 9780262033848.

LEC # TOPICS READINGS KEY DATES
1 Introduction, median finding, solving recurrences    
2 Median finding, interval scheduling 16.1 Problem set 1 out
3 Greedy algorithms, minimum spanning trees: Kruskal’s 23, B.4–B.5, 16.2  
4 Minimum spanning trees: Prim’s 6, 21

Problem set 1 due

Problem set 2 out

5 Fast Fourier transform 30

Problem set 2 due

Problem set 3 out

6 Dynamic programming, all pairs shortest paths: Floyd-Warshall 25 (introduction), 25.2  
7 All-pairs shortest paths II: Johnson’s 25.3 Problem set 3 due
  Quiz 1
8 Randomized algorithms 5, 9.2 Problem set 4 out
9 Randomized algorithms, high probability bounds C, 7.3  
10 Hashing 11, 17 (introduction), 17.1

Problem set 4 due

Problem set 5 out

11 Amortized analysis 17  
12 Competitive analysis  

Problem set 5 due

Problem set 6 out

13 Network flows 26.1, 26.2  
14 Preparation for take-home exam   Problem set 6 due
  Quiz 2 (take-home)
15 van Emde Boas data structure 20 Problem set 7 out
16 Advanced data structures: disjoint sets 21 (21.4 is optional)  
17 P vs. NP 34

Problem set 7 due

Problem set 8 out

18 Approximation algorithms 35 (except for 35.4)  
19 Compression 16.3

Problem set 8 due

Problem set 9 out

20 Sub-linear time algorithms    
21 Clustering   Problem set 9 due
22 Derandomization    
23 Computational geometry 33 (except for 33.3)  

Course Info

Learning Resource Types
Problem Sets with Solutions
Exams with Solutions
Lecture Notes