Department of Computer Science
Middlebury College
CS 302 - Algorithms and Complexity
Spring 2012

instructor: Dave Kauchak
e-mail: [first_initial][last_name]
office hours: MBH 635
  M/W 2-3pm
  T/Th 3-4pm
  and by appointment

time: T/Th 11am-12:15
location: MBH 538
web page: or go/cs302


Other information:


The midterm is now available.
Some practice problems
The final exam is now available.


Note: This is a tentative schedule and will likely change
2/14introduction (.tex), adminCh. 1, 2assignment 1 (.tex)
2/16big-O (ppt)Ch. 3assignment 2 (.tex) 
2/21recurrences (ppt)Ch. 4-4.1, 4.3-4.5assignment 3 (.tex) 
2/23quicksort, randomized algorithms (ppt)Ch. 7assignment 4 (.tex) 
2/28comparison-based sorting (ppt)
linear-time sorting
Ch. 8assignment 5 (.tex) 
3/1order statistics (ppt)
basic data structures (ppt)
Ch. 9, 10assignment 6 (.tex) 
3/6amortized analysis, heaps (ppt)Ch. 6, Ch. 17.1assignment 7 
3/8heaps (ppt), binomial heaps (ppt)Ch. 19-19.3assignment 8 (.tex) 
3/13binary search trees, B-trees (ppt)Ch. 12, 18assignment 9 (.tex) 
3/15disjoint setsCh. 21assingment 10 (.tex) 
3/20review (ppt)   
3/22hashtables (ppt)Ch 11, except 11.3.3, 11.5  
4/3greedy algorithms (ppt)Ch. 16-16.3assignment 11 (.tex) 
4/5more greedy (ppt), dynamic programming (ppt)Ch. 15-15.4assignment 12 (.tex) 
4/10dynamic programming (ppt)Ch. 15.5assignment 13 (.tex) 
4/12graph basics (ppt)Ch. 22assignment 14 (.tex) 
4/17shortest paths (ppt)Ch. 24-24.3assignment 15 (.tex) 
4/19minimum spanning trees (ppt)Ch. 23assignment 16 (.tex) 
4/24network flow (ppt)Ch. 26-26.2assignment 17 (.tex) 
4/26flow applications (ppt)Ch. 26.3assignment 18 (.tex) 
5/1linear programming (ppt)Ch. 7.1, 7.6, 7.7 from
Dasgupta et. al

Optional: Ch. 29
assignment 19 (.tex) 
5/3string algorithms (ppt)Ch. 32-32.3assignment20 (.tex) 
5/8NP-complete (ppt)Ch. 34assignment 21 (.tex) 
5/10review (ppt)