The hash table
In this section, you will learn about the HashTable
class, also known as HashMap
, a hash implementation of the Dictionary
class.
Hashing consists of finding a value in a data structure in the shortest time possible. You have learned from previous chapters that if we would like to get a value from it (using a get
method), we need to iterate through the structure until we find it. When we use a hash function, we already know which position the value is in, so we can simply retrieve it. A hash function is a function that given a key, and will return an address in the table where the value is.
For example, let's continue using the e-mail address book we used in the previous section. The hash function we will use is the most common one, called a "lose lose" hash function, where we simply sum up the ASCII values of each character of the key length.
Creating a hash table
We will use an array to represent our data structure to have a data structure very similar to the one we used in...