Computer Science 331 — Hash Tables
Hash tables are also data structures that can be used to implement finite sets and mappings. Their worst-case performance is not very good, and their analysis is complicated — but they work extremely well in practice (especially when used to represent a set or mapping that does not change very much) and they can be proved to have very good “expected” performance under certain assumptions.