CS240E Winter 2025 Lectures

Winter 2025 Lectures

There will be 11 modules with lecture-content, each taking about 2 lectures (with module 1 taking less and modules 8-11 expected to take longer). Modules will be made available before class (links will get enabled as the course progresses).

The course notes are available from the protected files area. If you want further reading, a list of textbooks that cover the topics of the course well are listed below, and specific relevant areas are listed with each module.

Module # Topic Readings
Module 0 Administrivia None
Module 1 Introduction and Asymptotic Analysis Course notes Chapter 1 (skip 1.5 for now)
Optional: Course notes Appendix A-B if you need a refresher.
Optional: Goodrich & Tamassia   1.1, 1.2, 1.3
Optional: Sedgewick    8.2, 8.3
Module 2 Priority Queues Course notes Chapter 2 (and parts of 1.5)
Optional: Sedgewick   9.1 - 9.4
Module 3
(updated)
Sorting, Average-Case and Randomized Algorithms Course notes Chapter 3 (and parts of 1.5)
Optional: Goodrich & Tamassia   8.3
Optional: Sedgewick   6.10, 7.1, 7.2, 7.8, 10.3, 10.5
Module 4
Dictionaries Course notes Chapter 4 (and parts of 1.5)
Optional: Goodrich & Tamassia   3.1, 4.1, 4.2
Module 5
Other Dictionary Implementations Course notes Chapter 5
Optional: Sedgewick    9.1-9.4
Module 6
Dictionaries for Special Keys Course notes Chapter 6
Optional: Goodrich & Tamassia   23.5.1-23.5.2
Optional: Sedgewick    12.4, 15.2-15.4
Module 7
Dictionaries via Hashing Course notes Chapter 7
Optional: Goodrich & Tamassia   6.4
Optional: Sedgewick    12.2, 14.1 - 14.4
Module 8
Range-Searching in Dictionaries of Points Course notes Chapter 8
Optional: Goodrich & Tamassia   21.1, 21.3
Module 9 String Matching Course notes Chapter 9
Optional: Goodrich & Tamassia   23
Module 10 Compression Course notes Chapter 10
Optional: Goodrich & Tamassia   10.3
Module 11 External Memory Course notes Chapter 11
Optional: Goodrich & Tamassia   20.1-20.3
Optional: Sedgewick    16.4

Textbooks

Course notes:

The following books are on reserve in the DC library for a different viewpoint and/or further details: