Class  Day  Date  Topic  Notes 
  Tue  Jan 14  
1  Thu  Jan 16  Introduction Models of computation 

2  Tue  Jan 21  Models of Computation Brent's scheduling principle 

3  Thu  Jan 23  Prefix Sums  
4  Tue  Jan 28  Selection Mergesort 

5  Thu  Jan 30  Sorting networks  
6  Tue  Feb 4  Sorting networks  
7  Thu  Feb 6  Homework 1 out  
8  Tue  Feb 11  
9  Thu  Feb 13  List Ranking: Wyllie's pointer hopping, randomized MIS  
10  Tue  Feb 18  List Ranking: deterministic MIS  
11  Thu  Feb 20  Tree algorithms: Euler circuit, expression tree evaluation  Homework 1 due 
12  Tue  Feb 25  
13  Thu  Feb 27  Lowest Common Anscestors, Range Minima Queries  Homework 2 out 
14  Tue  Mar 4  
15  Thu  Mar 6  Connected components, Minimum spanning tree  
16  Tue  Mar 11  O(log n) time connected components  
17  Thu  Mar 13  Biconnected components  Homework 2 due Homework 3 out 
18  Tue  Mar 18  Allpairs shortest paths, matrix multiplication  
19  Thu  Mar 20  Computational Geometry: Convext hull  
  Tue  Mar 25  Spring Break  
  Thu  Mar 27  Spring Break  
20  Tue  Apr 1  
21  Thu  Apr 3  Homework 3 due  
22  Tue  Apr 8  
23  Thu  Apr 10  
24  Tue  Apr 15  Computational Geometry: Halfplane intersection, 2variable linear programming  
25  Thu  Apr 17  Homework 4 out  
26  Tue  Apr 22  
27  Thu  Apr 24  
28  Tue  Apr 29  Computational Geometry: Plane sweep tree  
29  Thu  May 1  Advanced models of computation: PEM, GPU, MapReduce  Homework 4 due 
30  Tue  May 6  Project presentation. Limits of parallelism  Project due 