Week | Topics | Readings | Tutorial | Notes | |
---|---|---|---|---|---|
1 | May 15 | Course Introduction Review of time complexity of algorithms and asymptotic notation Abstract data types vs. data structures |
Ch. 1,2,3 | asymptotic bounds | Note on bounds (PDF) |
2 | May 22 | Priority queues: heaps, mergeable heaps (binomial heaps) | Ch. 6, 19 | heapify and build-heap | lecture summary |
3 | May 29 | Dictionaries: binary search trees Dictionaries: balanced search trees (AVL trees) |
12.1-12.3, AVL notes (PS) |
AVL tree delete | lecture summary |
4 | June 5 | Augmenting data structures Hashing: basic definitions |
Ch. 14 | probability review | lecture summary |
5 | June 12 | Hashing: chaining, probabilistic analysis Probabilistic vs. randomized algorithms: Quicksort |
11.1-11.3.2, Ch. 5, 7 |
augmenting AVL trees | lecture summary |
6 | June 19 | Disjoint sets | Ch. 21 | disjoint sets | lecture summary |
7 | June 26 | Amortized analysis, dynamic tables | Ch. 17 | amortized analysis | lecture summary |
8 | July 3 | Midterm test Graphs: defintions, data structures | Appendix B.4 | no tutorial | |
9 | July 10 | Graphs: breadth-first search Graphs: single-source shortest-path |
Ch. 22 | Dijkstra's algorithm | BFS proof (PDF) (PS) lecture summary |
10 | July 17 | Graphs: depth-first search | Ch. 22 | topological sort | lecture summary |
11 | July 24 | Graphs: minimum spanning trees Graphs: approximating solutions |
Ch. 23, 35.2 | MST algorithms | Alternate MST proof (PS) lecture summary |
12 | July 31 | Lower bounds: decision trees Lower bound for sorting |
8.1 | proving lower bounds | lecture summary |
13 | Aug 7 | Lower bounds: adversary arguments Lower bounds for the MIN-MAX problem |
9.1 | past exam questions | lecture summary |
-- | Final exams -- August 13-17 -- check exam schedule |
All readings are from the course textbook, Cormen, Leiserson, Rivest & Stein, Introduction to Algorithms (2nd edition). MIT Press and McGraw-Hill (2001), ISBN: 0-262-03293-7
Some of the notes are in PostScript format only. If you need a PostScript viewer for home, Ghostscript and GSview are free for both Windows and Mac (you'll need to install both programs). On the lab computers, gv should handle PS files automatically.
Lecture schedule is subject to change as the term progresses. Please check back each week to confirm reading assignments.
Though CLRS is thick, heavy and expensive, it contains a LOT of good stuff on algorithms, data structures and algorithmic techniques that you will find useful in later courses and use as a reference once you graduate. Buying it is a good investment. The down-side is that is is at times hard to read and learn from, and they often go overboard with details and lose or obscure the "intuition" of an algorithm.
For more affordable hard-copy options, look on Amazon ($60) or sites that sell the cheaper paperback (overseas/international) version, such as CampusI.com or AbeBooks (site suggested by a past student), but be aware of the shipping cost, currency conversion and time.
Last update: 08/09/2007 16:21:18 |
|