| Date |
Chapter(s) |
Lecture Topic(s) |
| February 2 | 1-5 |
1. Introduction |
| 4 | 6 |
2. Elementary sorts, shellsort |
| 9 | 7 |
3. Quicksort |
| 11 | 8 |
4. Mergesort, analysis of algorithms |
| 16 | 9 |
5. Priority queues |
| 18 | 10 |
6. Radix sorting |
| 23 | 12 |
7. Symbol-table ADTs |
| 25 | 13 |
8. Balanced trees |
| March 2 | 14 |
9. Hashing |
| 4 | 15 |
10. Trie searching |
| 9 | 11, 16 |
11. Sorting and searching huge files |
| 11 | | midterm exam |
| 23 | 19 |
12. String searching |
| 25 | 20, 21 |
13. Pattern matching |
| 30 | 22 |
14. File compression |
| April 1 | 24, 25 |
15. Basic geometric algorithms |
| 6 | 26, 27, 28 |
16. Geometric search |
| 8 | 29, 30 |
17. Basic graph algorithms |
| 13 | 31, 32 |
18. Spanning trees and 19. Shortest paths |
| 15 | 33, 34, 43 |
20. Network flow, matching, linear programming |
| 20 | 36, 41 |
21. Multiplication |
| 22 | 23 |
22. Cryptology |
| 27 | 42 |
23. Dynamic programming |
| 29 | 45 |
24. Intractable problems |
| May 11 | | review for final exam |