QuickSort (pdf)      
Decision Trees (pdf)      
Linear Sorting (pdf)      
Selection (pdf)      
Adversary arguments (pdf)      
Binary Search Trees (pdf)      
Red Black Trees (pdf)      
Binomial Heaps (pdf)      
Fibonacci Heaps (pdf)      
Amortisation and Fibonacci Heaps (pdf)      
Disjoint Sets (pdf)      
NP-completeness Part 1 - Definitions (pdf)      
NP-completeness Part 2 - Reductions (pdf)      
NP-completeness Part 3 - P vs NP (pdf)      
Dynamic Programming (pdf)      
Greedy Method (pdf)      
Matroids (pdf)