As we have discussed previously, there will be a possibility that one key is used by two values or more, since we map a big key to a small key. This situation is called a collision, where there is another key that will be mapped to an occupied slot. To solve this problem, we need a collision handling technique. And here are the ways to handle collisions:
- Separate chaining is a technique to point each cell in a hash table to a chaining node, or a linked list. The same hash key for a different value will be stored in the chaining node.
- Open addressing is a technique to store all elements in the hash table itself. If a collision is about to happen, the technique will find another slot by performing some calculation to ensure ...