Dictionaries are built out of HashTables in most languages. There's a pretty good reason. As this is probably students' first encounter with the concept of a hash, I also try to give a sense of what these functions are used for when we're not studying hashmaps/sets/tables.
What is a hash function? (5:11)
Hash Functions in Security/Privacy (2:22)
Hash Functions for HashMaps (3:28)
HashSet Example (4:30)
HashMap Example (1:11)
HashMap Internals: Collisions and Load Factor (5:50)
HashSet with Fewer Buckets (1:43)
HashMap Collision Resolution Strategies (2:21)
HashSet with Linear Probing Example (4:56)
HashMap Internals: Example Bucket Classes (1:06)
Insertion Order: LinkedHashMap and LinkedHashSet (1:15)
HashMaps are the best Dictionary (Complexity) (3:25)