Open In App

What is the difference between Hashing and Hash Tables?

Improve
Improve
Like Article
Like
Save
Share
Report

What is Hashing?

Hashing refers to the process of generating a fixed-size output from an input of variable size using the mathematical formulas known as hash functions. This technique determines an index or location for the storage of an item in a data structure.

It might not be strictly related to key-value pairs only if you are manipulating the data say for some encryption or changing it to a form that will be less complex to handle with, then its also hashing

What is Hash Table?

The implementation of a Hash table is the most popular use for hashing. This is a container that store the key-value pairs. Hash Tables use Hashing to generate a short Integer value out of the key and maps it with a value. 

Some  Important concepts regarding Hash Table:

Initial Capacity: In Java when we create a Hash Table, it constructs a new empty hashtable with a default initial capacity of 11. For HashMap in Java the initial capacity is 16

Load Factor: Load factor is defined as the ratio of the preferred number of entries that can be inserted in the Hash table before a size increment is required (a) to the total size of the hash table (b) i.e., load factor is (a/b).

Collision: A collision occurs when two keys are hashed to the same index in a hash table. Collisions are a problem because every slot in a hash table is supposed to store a single element. When Collision occurs it creates a chaining like a linked list and stores the keys. 

Difference between Hash Table and Hashing:

Sl No. Hashing Hash Table
1 Hashing is the process of transforming any given key or a string of characters into another value. Hash Table is a container to store the key-value pairs.
2 Hashing is a built-in method. It can be defined by users also. Hash table, HashMap, HashSet in  Java and map, multimap, unordered_map, set etc. in C++ uses hashing to store data.
3 Hashing is used to generate a hashcode which is of type Integer. Based on our needs we can use any type of hash table.
4 Hashing uses the same process for every key to generate hashcodes. Hash Table generally works as a lookup table to check the keys we already came across and update or change the values being mapped with them or insert a new key in the table.

Related Articles:


Last Updated : 13 Dec, 2022
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads