Added |
14 Feb 2009 |
Updated |
14 Feb 2009 |
Year |
2000 |
Authors |
Jeff Erickson |
Table of Contents
Recursion
Solving recurrences
Recursion
Divide and conquer
Fast Fourier transforms
Dynamic programming
Greedy algorithms
Randomization
Nuts and bolts (randomized quicksort)
Treaps and skip lists
Uniform and universal hashing
Amortized analysis
Aggregation, taxation, potential
Scapegoat trees and splay trees
Maintaining disjoint sets ("union-find")
Fibonacci heaps
Graph algorithms
Representations, traversal
Minimum spanning trees
Single-source shortest paths
All-pairs shortest paths
Maximum flows and minimum cuts
Maximum flow algorithms and applications
Randomized minimum cuts
Number-theoretic algorithms
String matching
Brute force, fingerprinting
Knuth-Morris-Pratt
Geometry
Computational geometry: convex hulls
Line segment intersection
Polygon triangulation
Lower bounds
Decision trees, leaf counting
Adversary arguments ("n-card monte")
Reductions
NP-hardness
Approximation algorithms
Linear programming
J. Definitions and duality
K. The simplex algorithm