Hash Table Basics
- Describe how hashing works (including what is the underlying data structure for a hash table and what is a hash function)
- What would the hash function look like if a string is used as the key?
- What are the requirements for a good hash function?
- Identify multiple scenarios when it is appropriate to use a hash table
Handling Collisions
- Using the following strategies, and given a hash table with 7 entries, draw the hash table and it's contents after inserting the following numbers: 7, 11, 71, 42, 13, 49:
- Separate chaining
- Linear probing
- Quadratic probing
- Double hashing
- Calculate the load factor α for each of the previous strategies in the exercise above.
Rehashing
- What is rehashing and what are the major steps of rehashing?
- Why do we rehash?
- When do we rehash?
Hashing Efficiency
- Discuss the advantages and disadvantages of the following implementations for hash tables (use efficiency as evidence to support your claims):
- Separate chaining
- Linear probing
- Quadratic probing
- Double hashing
Last Modified: