The power point presentations are almost all courtesy of James Anderson.
Course Introduction (Lecture 1)
Amortized Analysis from http://users.cs.fiu.edu/~taoli/ (Lecture 1.5, Chapter 17)
Probability (Lecture 2)
Skip Lists (Lecture 3)
Treaps (Also see pages 296 - 300 of the text.)
Comparison of Dictionary Data Structures
Quick Sort (Lecture 4, Chapter 7)
Binomial Heaps (Lecture 5, Chapter 19)
Disjoint Sets (Lecture 6,7, Chapter 21)
B-Trees (Lecture 8,9, Chapter 18)
Splay Trees (Lecture 10)
Single Source Shortest Paths (Lecture 11, Chapter 24)
All Pairs Shortest Paths (Lecture 12, Chapter 25)
Flow (Lecture 13, Chapter 26)
NP Completeness
(Lectures 14-17, Chapter 34)
Strong NP-Completness
(Lecture 18)
Approximation Algorithms for NP Complete Problems (Lecture 19, Chapter 35)
Probabilistically checkable proofs and NP completeness
Strong NP Completness Reference
Strong NP Completness Reference
Strong NP Completness Reference
String Processing (Lectures 21, 22, Chapter 32)
Number Theory and Cryptography (Lectures 23, 24, Chapter 31)
Linear Programming (Lecture 25, 26, Chapter 29)
Intuition for Duality (Lecture 25, 26, Chapter 29)
Fast Fourier Transform (Lecture 27, Chapter 30)
Skills in demand for programmers