To compile:
$ make
To run:
$ make run
To clean up:
$ make clean
You will implement an efficient hopscotch hash table using C++ that improves on the classic linear probing algorithm. Specifically, you will use a TABLE_SIZE = 17 and use the single hash function h(x) = x mod TABLE_SIZE. You shall resolve collisions using linear probing where the maximal length of the probe sequence (i.e., distance away from the original hash location) is bound by the hopscotch hashing algorithm where MAX_DIST = 4.
Program Menu :
HOPSCOTCH HASHING MENU:
+------------------------+
| 1 - Insert Value |
| 2 - Delete Value |
| 3 - Search Value |
| 4 - Output Table |
| 5 - Exit Program |
+------------------------+
Overview:
1 - Insert Value
inserts a value into the hopscotch hash table. If necessary, values will be rearranged. If rearranging is not successful, an error will be displayed.
2 - Delete Value
deletes a value and clears its corresponding key within the table.
3 - Search Value
searches for a given value and returns its corresponding key within the table.
4 - Output Table
prints the current hash table.
5 - Exit Program
exits the running program.