- Divide & Conquer, Sorting & Searching, and Randomized Algorithms
 - Graph Search, Shortest Paths and Data Structures
 - Greedy Algorithms, Minimum Spanning Trees & Dynamic Programming
 - Shortest Paths revisited, NP Hard problems
 
- Divide & Conquer, Sorting & Searching, and Randomized Algorithms
 - Graph Search, Shortest Paths and Data Structures
 - Greedy Algorithms, Minimum Spanning Trees & Dynamic Programming
 - Shortest Paths revisited, NP Hard problems