CSOR 4231
Fall 2007

Analysis of Algorithms

Professor Cliff Stein

Syllabus (Tentative)

Class Number Date Topics Reading HW Assigned HW Due
1 5/18 Introduction, Strassen's Matrix Multiplication Algorithm Skim CLRS 1-3 , 28.2 HW 1
2 5/20 Asymptotic notation CLRS 4
3 5/22 Recurrences CLRS 4
4 5/27 Heapsort, Loop invariants, CLRS 6, 8.1
5 5/29 Lower bounds for sorting, Counting Sort, Radix Sort, Deterministic Selection CLRS 8.2-8.3, 9.1, 9.3 HW 2 HW 1
6 6/1 Randomized Analysis CLRS 5
7 6/3 Indicator Random Variables CLRS 5
8 6/5 Quicksort, Randomized Selection CLRS 7, 9.2
9 6/8 Skip Lists Read this paper HW 3 HW 2
10 6/10 Dynamic Programming CLRS 15
11 6/12 Dynamic Programming CLRS 15
12 6/15 Dynamic Programming CLRS 15
13 6/17 Greedy Algorithms CLRS 16 HW 4 HW 3
14 6/19 Greedy Algorithms/Amortized Analysis CLRS 16, 17
15 6/22 Amortized Analysis CLRS 17
16 6/24 Disjoint Sets CLRS 21 HW 4
17 6/26 Graph Algorithms, BFS, DFS, Topological Sort CLRS 22.1-22.4 Midterm out
18 7/1 Strongly Connected Components, Minimum Spanning Trees CLRS 22.5, CLRS 23 HW 5 Midterm due
19 7/3 Single-source shortest paths, relaxation, Bellman-Ford CLRS 24.1, 24.5
20 7/8 Shortest paths in dags, Dijkstra's algorithm, All pairs shortest paths CLRS 24.2-24.3, CLRS 25 HW 6 HW 5
21 7/10 Maximum Flows 26.1 - 26.3
22 7/13 NP-completeness CLRS 34
23 7/15 NP-completeness CLRS 34 HW 7 HW 6
24 7/20 NP-completeness CLRS 34
25 7/22 Approximation Algorithms CLRS 35
26 7/27 Approximation Algorithms CLRS 35 HW 7
8/11 9-12 A.M. Final
CLRS = Introduction to Algorithms, 2nd edition , by Cormen, Leiserson, Rivest and Stein