Stanford University online course
- Two Motivating Applications
- Introduction to Greedy Algorithms
- A Scheduling Application
- Prims Minimum Spanning Tree Algorithm
- Kruskals Minimum Spanning Tree Algorithm
- Clustering
- Advanced Union Find
- Huffman Codes
- Introduction to Dynamic Programming
- The Knapsack Problem
- Sequence Alignment
- Optimal Binary Search Trees
- The Bellman-Ford Algorithm
- All Pairs Shortest Paths
- NP-Complete Problems
- Faster Exact Algorithms for NP-Complete Problems
- Approximations Algorithms for NP-Complete Problems
- Local Search
- The Wider World of Algorithms