CSOR 4231
Fall 2003

Analysis of Algorithms

Professor Cliff Stein

Syllabus (Tentative)

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