Course Outline and Seminars:
The following is a tentative outline for the classes, seminars, and required reading for the course.
| Seminar | Date | Topic | Reading |
|---|---|---|---|
| Module I · The Linear | |||
| 1 | Aug 25 | Data Structures for Numbers | |
| 2 | Aug 27 | Interfaces and Implementation | |
| 3 | Sep 1 | List | |
| 4 | Sep 3 | Arrays | |
| 5 | Sep 8 | Quiz I | |
| 6 | Sep 10 | Sequence Interface | |
| Module II · The Hierarchical | |||
| 7 | Sep 15 | Abstract Data Types | |
| 8 | Sep 17 | Binary Search Trees | |
| 9 | TBD | Balanced Search Trees | |
| 10 | TBD | Heaps: Eager and Lazy | |
| 11 | TBD | Priority Queues and Applications | |
| Module III · The Probabilistic | |||
| 12 | TBD | Hashing: Theory and Practice | |
| 13 | TBD | Hash Tables and Collision Resolution | |
| 14 | TBD | Skip Lists | |
| 15 | TBD | Randomized Analysis | |
| Module IV · The String-Oriented | |||
| 16 | TBD | Tries | |
| 17 | TBD | Range Queries | |
| 18 | TBD | Segment Trees and Fenwick Trees | |
| Module V · The Relational | |||
| 19 | TBD | Graphs: Representations | |
| 20 | TBD | Breadth-First Search | |
| 21 | TBD | Depth-First Search | |
| 22 | TBD | Shortest Paths | |
| 23 | TBD | Minimum Spanning Trees | |
| Synthesis and Final | |||
| 24 | TBD | Choosing a Data Structure: Case Studies | |
| 25 | TBD | Final Exam | |