May 2017
Intermediate to advanced
310 pages
8h 5m
English
We add elements to the hash with the put() function and retrieve with the get() function. First, we will look at the implementation of the put() function. We start by embedding the key and the value into the HashItem class and computing the hash of the key:
def put(self, key, value): item = HashItem(key, value) h = self._hash(key)
Now we need to find an empty slot. We start at the slot that corresponds to the hash value of the key. If that slot is empty, we insert our item there.
However, if the slot is not empty and the key of the item is not the same as our current key, then we have a collision. This is where we need to figure out a way to handle a conflict. We are going to do this by adding one to the previous hash ...