Testing the hash table

To test our hash table, we create HashTable and store a few elements in it, then try to retrieve them. We will also try to get() a key that does not exist. We also use the two strings, ad and ga, which had the collision and returned the same hash value by our hashing function. To properly evaluate the work of the hash table, we throw this collision as well, just to see that the collision is properly resolved. See the example code, as follows:

ht = HashTable() 
ht.put("good", "eggs")
ht.put("better", "ham")
ht.put("best", "spam")
ht.put("ad", "do not")
ht.put("ga", "collide")

for key in ("good", "better", "best", "worst", "ad", "ga"):
v = ht.get(key)
print(v)

Running the preceding code returns the following:

% python hashtable.py

eggs
ham
spam
None
do not
collide

As you can see, looking up the worst key returns None, since the key does not exist. The ad and ga keys also return their corresponding values, showing that the collision between them is properly handled.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset