| Lecture Topic | Reading Assignment | Projected for: | |
| Drozdek | Notes | ||
| Introduction & Review | 1.1 - 1.9 | Admin | May 23 |
| Math Review | May 23 | ||
| Linear Structures | |||
| General Lists | 3.1 - 3.3 | Linear Structures | May 24 |
| Stacks | 4.1 | Linear Structures | May 24 |
| Queues | 4.2, 4.3 | Linear Structures | May 24 |
| Skip Lists | 3.4 | Skip Lists | May 25 |
| Secondary Storage | Secondary Storage | May 26 | |
| Physical Characteristics | |||
| Access Times | |||
| Buffer Pools | May 27 | ||
| Binary File I/O | Binary File I/O | May 31 | |
| Algorithm Analysis | Algorithm Analysis | June 1 | |
| Asymptotics | 2.1 - 2.8 | Asymptotics | June 2 |
| Binary Trees | |||
| Binary Trees | 6.1 - 6.2 | Binary Trees | June 3 |
| BSTs | 6.3 - 6.6 | Binary Search Trees | June 6 |
| Balanced Trees (splaying) | 6.8 | June 6 | |
| AVL Trees | 6.7.2 | AVL Trees | June 7-8 |
| Heaps | 6.9 | Heaps | June 9, 13 |
| Midterm Exam | June 10 | ||
| Indexing I | |||
| Linear Indices | 3.6 | Tables | June 14 |
| Hashing | 10.1 - 10.3 | Hashing | June 15 |
| Self-organizing Lists | 3.5 | Self-organizing Lists | June 16 |
| Sorting | Sorting | ||
| Insertion Sort | 9.1.1 | June 17 | |
| Theoretical Bounds | 9.2 | June 17 | |
| Shell Sort | 9.3.1 | June 17 | |
| HeapSort | 9.3.2 | June 17 | |
| MergeSort | 9.3.4 | June 17 | |
| QuickSort | 9.3.3 | June 20 | |
| Radix Sort | 9.3.5 | June 20 | |
| Indexing II | Tree Indexing | ||
| 2-3 Trees | June 21 | ||
| B trees | 7.1.1 | June 21 | |
| B+ trees | 7.1.3 | June 21 | |
| Red-Black Trees | June 22 | ||
| External Sorting | External Sorting | June 23 | |
| General Trees | General Trees | June 24 | |
| Graphs | Graphs | ||
| Representation Schemes | 8.1 | June 27 | |
| Traversal Algorithms | 8.2 | June 27 | |
| Shortest Path | 8.3 | June 28 | |
| Minimal Spanning Trees | June 29 | ||
| Prim's Algorithm | |||
| Kruskal's Algorithm | 8.5.2 | ||
| Classes End | |||
|
Final Exam |
|
|
10:30 - 12:30 Sat July 2 |