Javatpoint Logo
Javatpoint Logo

Hashing Techniques in Java

The hash function is a key-value mapping function. When two or more keys are mapped to the same value using these hashing methods, there exists duplicate values. The use of chain hashing prevents collisions. Each hash table cell should lead to a linked list of entries that have the same hash function value.

Let's create a hash function that returns a hash table with 'N' buckets.

To add a node to the hash table, we need to find the hash index for the specified key.

The hash function might also be used to figure it out.

Insert: Go to the bucket that corresponds to the hash index determined above and add the new node to the end of the list.

Delete: To remove a node from a hash table, compute the key's hash index, move to the bucket that corresponds to the calculated hash index, search the list in the current bucket for the node with the supplied key, and remove it (if found).

Methods for Implementing hashing in Java

1. HashTable-based Method(A synchronised implementation of hashing)


{5=Hello, 3=You are visiting, 2=Javatpoint, 1=website}

Here, the above Java code demonstrates the use of Hashtable.

2. HashMap-based Method (A non-synchronized faster implementation of hashing)


{1=1, 5=1, 6=3, 10=2}

The above Java code displays the use of Hashmap. It is a non-synchronized faster method for hashing.

3. LinkedHashMap-based method(Similar to HashMap, but keeps order of elements)


{One=Robin, Two=Satyam, Three=Kanishk}
Getting value for key 'one': Robin
Size of the Hashmap: 3
Is Hashmap empty? false
Contains key 'two'? true
Contains value 'Kanishk? true
delete element 'one': Robin
{Two=Satyam, Three=Kanishk}

In the above program LinkedHashMap is used with its different methods such as size(), get(), isEmpty(), containsKey(), containsValue(), remove().

4. ConcurretHashMap-based Method (Similar to HashTable, Synchronized, but faster as multiple locks are used)


ConcurentHashMap: {201=How, 202=are, 203=you}
ConcurentHashMap: {201=How, 202=are, 203=you}
ConcurentHashMap: {201=Who, 202=are, 203=you}
ConcurentHashMap: {201=Who, 202=are}

The above Java program displays an implementation of ConcurrentHashMap with its different methods such as put(), putIfAbsent(), replace(), remove().

Youtube For Videos Join Our Youtube Channel: Join Now


Help Others, Please Share

facebook twitter pinterest

Learn Latest Tutorials


Trending Technologies

B.Tech / MCA