| Date
| Topic
| Text
| Demos
|
1 |
1/18 |
Administrativia & Introduction |
Ch 1-2 |
stable marriage
|
2 |
1/20 |
Review of Algorithmic Graph Primitives |
Ch 3 |
BFS &
DFS
|
3 |
1/25 |
Greedy Algorithms |
§4.1-2 |
interval scheduling
|
4 |
2/1 |
Shortest Paths and Minimum Spanning Trees |
§4.4-6 |
Dijkstra,
Prim &
Kruskal
|
5 |
2/3 |
Huffman Codes |
§4.6,8 |
Huffman
|
6 |
2/8 |
Divide and Conquer |
§5.1-4 & H |
mergesort &
counting inversions
|
7 |
2/10 |
Linear-Time Selection |
§5.5 & H |
selection
|
8 |
2/15 |
Fast Fourier Transform |
§5.6 |
|
9 |
2/17 |
Dynamic Programming |
§6.1-2,4 |
|
10 |
2/22 |
Problems in Computational Biology |
§6.5-7 |
RNA
|
11 |
2/24 |
Shortest Paths Revisited |
§6.8-10 |
|
12 |
3/1 |
Linear-Time String Matching |
H |
KMP
|
13 |
3/3 |
Network Flow and Cuts |
§7.1-2 |
max flow
|
14 |
3/8 |
Path Augmentation |
§7.3 & H |
|
15 |
3/10 |
Bipartite Matching and Disjoint Paths |
§7.5-6 |
|
16 |
3/29 |
Applications of Maximum Flow |
§7.7-9 |
|
17 |
3/31 |
Applications of Minimum Cut |
§7.10-12 |
|
18 |
4/5 |
Global Minimum Cut using Randomness |
§13.12,2 |
|
19 |
4/7 |
Selection and Sorting using Randomness |
§13.3,5 |
|
20 |
4/12 |
Hashing |
§13.6 |
|
21 |
4/14 |
Closest Pair of Points using Randomness |
§13.7 |
|
22 |
4/19 |
Load Balancing |
§13.9-10 |
|
23 |
4/21 |
Reductions |
§8.1-2 |
|
24 |
4/26 |
NP-Completeness |
§8.3-4 |
|
25 |
4/28 |
Satisfiability |
§8.4,10 |
|
26 |
5/3 |
Other NP-Complete Problems |
§8.5,7-8 |
|
27 |
5/5 |
Dealing with Computational Intractability |
§10.1-2 & 11.6 |
|