| Date |
Topic |
Notes |
| Mon, Aug 23 |
Introduction and overview
|
PS PDF |
| |
I. SORTING
|
|
| Wed, Aug 25 |
Quicksort
|
PS PDF |
| Mon, Aug 30 |
Heapsort
|
PS PDF |
| Wed, Sep 01 |
Linear-time sorting
|
PS PDF |
| Mon, Sep 06 |
Selection
|
PS PDF |
| |
II. SEARCHING
|
|
| Wed, Sep 08 |
Binary search trees
|
PS PDF |
| Mon, Sep 13 |
Red-black trees
|
PS PDF |
| Wed, Sep 15 |
Skip lists
|
PS PDF |
| Mon, Sep 20 |
Hash tables
|
PS PDF |
| |
III. PARADIGMS
| |
| Wed, Sep 22 |
Dynamic programming
|
PS PDF |
| Mon, Sep 27 |
Greedy algorithms
|
PS PDF |
| Wed, Sep 29 |
Solving recurrence relations
|
PS PDF |
| Mon, Oct 04 |
Amortized analysis
|
PS PDF |
| |
FIRST EXAM
|
|
| Wed, Oct 06 |
... Midterm ...
|
PS PDF |
| Mon, Oct 11 |
... Fall break ...
|
|
| |
IV. ADVANCED DATA STRCTURES
|
|
| Wed, Oct 13 |
Fibonacci heaps, I
|
PS PDF |
| Mon, Oct 18 |
Fibonacci heaps, II
|
PS PDF |
| Wed, Oct 20 |
Splay tree, I
|
PS PDF |
| Mon, Oct 25 |
Splay tree, II
|
PS PDF |
| |
V. GRAPH ALGORITHMS
|
|
| Wed, Oct 27 |
Graph search
|
PS PDF |
| Mon, Nov 01 |
Shortest paths
|
PS PDF |
| Wed, Nov 03 |
Spanning trees
|
PS PDF |
| Mon, Nov 08 |
Union-find
|
PS PDF |
| |
VI. STRING ALGORITHMS
|
|
| Wed, Nov 10 |
String matching
|
PS PDF |
| Mon, Nov 15 |
Searching with strings
| PS PDF |
| Wed, Nov 17 |
Pattern matching
| PS PDF |
| |
VII. NP-COMPLETENESS
|
|
| Mon, Nov 22 |
Easy and hard problems
| PS PDF |
| Wed, Nov 24 |
... Thanksgiving Recess ...
|
|
| Mon, Nov 29 |
NP-complete problems
| PS PDF |
| Wed, Dec 01 |
Approximation algorithms
| PS PDF |
| Mon, Dec 06 |
... Final exam, 9am to noon ...
|
|