Explore Courses
Liverpool Business SchoolLiverpool Business SchoolMBA by Liverpool Business School
  • 18 Months
Bestseller
Golden Gate UniversityGolden Gate UniversityMBA (Master of Business Administration)
  • 15 Months
Popular
O.P.Jindal Global UniversityO.P.Jindal Global UniversityMaster of Business Administration (MBA)
  • 12 Months
New
Birla Institute of Management Technology Birla Institute of Management Technology Post Graduate Diploma in Management (BIMTECH)
  • 24 Months
Liverpool John Moores UniversityLiverpool John Moores UniversityMS in Data Science
  • 18 Months
Popular
IIIT BangaloreIIIT BangalorePost Graduate Programme in Data Science & AI (Executive)
  • 12 Months
Bestseller
Golden Gate UniversityGolden Gate UniversityDBA in Emerging Technologies with concentration in Generative AI
  • 3 Years
upGradupGradData Science Bootcamp with AI
  • 6 Months
New
University of MarylandIIIT BangalorePost Graduate Certificate in Data Science & AI (Executive)
  • 8-8.5 Months
upGradupGradData Science Bootcamp with AI
  • 6 months
Popular
upGrad KnowledgeHutupGrad KnowledgeHutData Engineer Bootcamp
  • Self-Paced
upGradupGradCertificate Course in Business Analytics & Consulting in association with PwC India
  • 06 Months
OP Jindal Global UniversityOP Jindal Global UniversityMaster of Design in User Experience Design
  • 12 Months
Popular
WoolfWoolfMaster of Science in Computer Science
  • 18 Months
New
Jindal Global UniversityJindal Global UniversityMaster of Design in User Experience
  • 12 Months
New
Rushford, GenevaRushford Business SchoolDBA Doctorate in Technology (Computer Science)
  • 36 Months
IIIT BangaloreIIIT BangaloreCloud Computing and DevOps Program (Executive)
  • 8 Months
New
upGrad KnowledgeHutupGrad KnowledgeHutAWS Solutions Architect Certification
  • 32 Hours
upGradupGradFull Stack Software Development Bootcamp
  • 6 Months
Popular
upGradupGradUI/UX Bootcamp
  • 3 Months
upGradupGradCloud Computing Bootcamp
  • 7.5 Months
Golden Gate University Golden Gate University Doctor of Business Administration in Digital Leadership
  • 36 Months
New
Jindal Global UniversityJindal Global UniversityMaster of Design in User Experience
  • 12 Months
New
Golden Gate University Golden Gate University Doctor of Business Administration (DBA)
  • 36 Months
Bestseller
Ecole Supérieure de Gestion et Commerce International ParisEcole Supérieure de Gestion et Commerce International ParisDoctorate of Business Administration (DBA)
  • 36 Months
Rushford, GenevaRushford Business SchoolDoctorate of Business Administration (DBA)
  • 36 Months
KnowledgeHut upGradKnowledgeHut upGradSAFe® 6.0 Certified ScrumMaster (SSM) Training
  • Self-Paced
KnowledgeHut upGradKnowledgeHut upGradPMP® certification
  • Self-Paced
IIM KozhikodeIIM KozhikodeProfessional Certification in HR Management and Analytics
  • 6 Months
Bestseller
Duke CEDuke CEPost Graduate Certificate in Product Management
  • 4-8 Months
Bestseller
upGrad KnowledgeHutupGrad KnowledgeHutLeading SAFe® 6.0 Certification
  • 16 Hours
Popular
upGrad KnowledgeHutupGrad KnowledgeHutCertified ScrumMaster®(CSM) Training
  • 16 Hours
Bestseller
PwCupGrad CampusCertification Program in Financial Modelling & Analysis in association with PwC India
  • 4 Months
upGrad KnowledgeHutupGrad KnowledgeHutSAFe® 6.0 POPM Certification
  • 16 Hours
O.P.Jindal Global UniversityO.P.Jindal Global UniversityMaster of Science in Artificial Intelligence and Data Science
  • 12 Months
Bestseller
Liverpool John Moores University Liverpool John Moores University MS in Machine Learning & AI
  • 18 Months
Popular
Golden Gate UniversityGolden Gate UniversityDBA in Emerging Technologies with concentration in Generative AI
  • 3 Years
IIIT BangaloreIIIT BangaloreExecutive Post Graduate Programme in Machine Learning & AI
  • 13 Months
Bestseller
IIITBIIITBExecutive Program in Generative AI for Leaders
  • 4 Months
upGradupGradAdvanced Certificate Program in GenerativeAI
  • 4 Months
New
IIIT BangaloreIIIT BangalorePost Graduate Certificate in Machine Learning & Deep Learning (Executive)
  • 8 Months
Bestseller
Jindal Global UniversityJindal Global UniversityMaster of Design in User Experience
  • 12 Months
New
Liverpool Business SchoolLiverpool Business SchoolMBA with Marketing Concentration
  • 18 Months
Bestseller
Golden Gate UniversityGolden Gate UniversityMBA with Marketing Concentration
  • 15 Months
Popular
MICAMICAAdvanced Certificate in Digital Marketing and Communication
  • 6 Months
Bestseller
MICAMICAAdvanced Certificate in Brand Communication Management
  • 5 Months
Popular
upGradupGradDigital Marketing Accelerator Program
  • 05 Months
Jindal Global Law SchoolJindal Global Law SchoolLL.M. in Corporate & Financial Law
  • 12 Months
Bestseller
Jindal Global Law SchoolJindal Global Law SchoolLL.M. in AI and Emerging Technologies (Blended Learning Program)
  • 12 Months
Jindal Global Law SchoolJindal Global Law SchoolLL.M. in Intellectual Property & Technology Law
  • 12 Months
Jindal Global Law SchoolJindal Global Law SchoolLL.M. in Dispute Resolution
  • 12 Months
upGradupGradContract Law Certificate Program
  • Self paced
New
ESGCI, ParisESGCI, ParisDoctorate of Business Administration (DBA) from ESGCI, Paris
  • 36 Months
Golden Gate University Golden Gate University Doctor of Business Administration From Golden Gate University, San Francisco
  • 36 Months
Rushford Business SchoolRushford Business SchoolDoctor of Business Administration from Rushford Business School, Switzerland)
  • 36 Months
Edgewood CollegeEdgewood CollegeDoctorate of Business Administration from Edgewood College
  • 24 Months
Golden Gate UniversityGolden Gate UniversityDBA in Emerging Technologies with Concentration in Generative AI
  • 36 Months
Golden Gate University Golden Gate University DBA in Digital Leadership from Golden Gate University, San Francisco
  • 36 Months
Liverpool Business SchoolLiverpool Business SchoolMBA by Liverpool Business School
  • 18 Months
Bestseller
Golden Gate UniversityGolden Gate UniversityMBA (Master of Business Administration)
  • 15 Months
Popular
O.P.Jindal Global UniversityO.P.Jindal Global UniversityMaster of Business Administration (MBA)
  • 12 Months
New
Deakin Business School and Institute of Management Technology, GhaziabadDeakin Business School and IMT, GhaziabadMBA (Master of Business Administration)
  • 12 Months
Liverpool John Moores UniversityLiverpool John Moores UniversityMS in Data Science
  • 18 Months
Bestseller
O.P.Jindal Global UniversityO.P.Jindal Global UniversityMaster of Science in Artificial Intelligence and Data Science
  • 12 Months
Bestseller
IIIT BangaloreIIIT BangalorePost Graduate Programme in Data Science (Executive)
  • 12 Months
Bestseller
O.P.Jindal Global UniversityO.P.Jindal Global UniversityO.P.Jindal Global University
  • 12 Months
WoolfWoolfMaster of Science in Computer Science
  • 18 Months
New
Liverpool John Moores University Liverpool John Moores University MS in Machine Learning & AI
  • 18 Months
Popular
Golden Gate UniversityGolden Gate UniversityDBA in Emerging Technologies with concentration in Generative AI
  • 3 Years
Rushford, GenevaRushford Business SchoolDoctorate of Business Administration (AI/ML)
  • 36 Months
Ecole Supérieure de Gestion et Commerce International ParisEcole Supérieure de Gestion et Commerce International ParisDBA Specialisation in AI & ML
  • 36 Months
Golden Gate University Golden Gate University Doctor of Business Administration (DBA)
  • 36 Months
Bestseller
Ecole Supérieure de Gestion et Commerce International ParisEcole Supérieure de Gestion et Commerce International ParisDoctorate of Business Administration (DBA)
  • 36 Months
Rushford, GenevaRushford Business SchoolDoctorate of Business Administration (DBA)
  • 36 Months
Liverpool Business SchoolLiverpool Business SchoolMBA with Marketing Concentration
  • 18 Months
Bestseller
Golden Gate UniversityGolden Gate UniversityMBA with Marketing Concentration
  • 15 Months
Popular
Jindal Global Law SchoolJindal Global Law SchoolLL.M. in Corporate & Financial Law
  • 12 Months
Bestseller
Jindal Global Law SchoolJindal Global Law SchoolLL.M. in Intellectual Property & Technology Law
  • 12 Months
Jindal Global Law SchoolJindal Global Law SchoolLL.M. in Dispute Resolution
  • 12 Months
IIITBIIITBExecutive Program in Generative AI for Leaders
  • 4 Months
New
IIIT BangaloreIIIT BangaloreExecutive Post Graduate Programme in Machine Learning & AI
  • 13 Months
Bestseller
upGradupGradData Science Bootcamp with AI
  • 6 Months
New
upGradupGradAdvanced Certificate Program in GenerativeAI
  • 4 Months
New
KnowledgeHut upGradKnowledgeHut upGradSAFe® 6.0 Certified ScrumMaster (SSM) Training
  • Self-Paced
upGrad KnowledgeHutupGrad KnowledgeHutCertified ScrumMaster®(CSM) Training
  • 16 Hours
upGrad KnowledgeHutupGrad KnowledgeHutLeading SAFe® 6.0 Certification
  • 16 Hours
KnowledgeHut upGradKnowledgeHut upGradPMP® certification
  • Self-Paced
upGrad KnowledgeHutupGrad KnowledgeHutAWS Solutions Architect Certification
  • 32 Hours
upGrad KnowledgeHutupGrad KnowledgeHutAzure Administrator Certification (AZ-104)
  • 24 Hours
KnowledgeHut upGradKnowledgeHut upGradAWS Cloud Practioner Essentials Certification
  • 1 Week
KnowledgeHut upGradKnowledgeHut upGradAzure Data Engineering Training (DP-203)
  • 1 Week
MICAMICAAdvanced Certificate in Digital Marketing and Communication
  • 6 Months
Bestseller
MICAMICAAdvanced Certificate in Brand Communication Management
  • 5 Months
Popular
IIM KozhikodeIIM KozhikodeProfessional Certification in HR Management and Analytics
  • 6 Months
Bestseller
Duke CEDuke CEPost Graduate Certificate in Product Management
  • 4-8 Months
Bestseller
Loyola Institute of Business Administration (LIBA)Loyola Institute of Business Administration (LIBA)Executive PG Programme in Human Resource Management
  • 11 Months
Popular
Goa Institute of ManagementGoa Institute of ManagementExecutive PG Program in Healthcare Management
  • 11 Months
IMT GhaziabadIMT GhaziabadAdvanced General Management Program
  • 11 Months
Golden Gate UniversityGolden Gate UniversityProfessional Certificate in Global Business Management
  • 6-8 Months
upGradupGradContract Law Certificate Program
  • Self paced
New
IU, GermanyIU, GermanyMaster of Business Administration (90 ECTS)
  • 18 Months
Bestseller
IU, GermanyIU, GermanyMaster in International Management (120 ECTS)
  • 24 Months
Popular
IU, GermanyIU, GermanyB.Sc. Computer Science (180 ECTS)
  • 36 Months
Clark UniversityClark UniversityMaster of Business Administration
  • 23 Months
New
Golden Gate UniversityGolden Gate UniversityMaster of Business Administration
  • 20 Months
Clark University, USClark University, USMS in Project Management
  • 20 Months
New
Edgewood CollegeEdgewood CollegeMaster of Business Administration
  • 23 Months
The American Business SchoolThe American Business SchoolMBA with specialization
  • 23 Months
New
Aivancity ParisAivancity ParisMSc Artificial Intelligence Engineering
  • 24 Months
Aivancity ParisAivancity ParisMSc Data Engineering
  • 24 Months
The American Business SchoolThe American Business SchoolMBA with specialization
  • 23 Months
New
Aivancity ParisAivancity ParisMSc Artificial Intelligence Engineering
  • 24 Months
Aivancity ParisAivancity ParisMSc Data Engineering
  • 24 Months
upGradupGradData Science Bootcamp with AI
  • 6 Months
Popular
upGrad KnowledgeHutupGrad KnowledgeHutData Engineer Bootcamp
  • Self-Paced
upGradupGradFull Stack Software Development Bootcamp
  • 6 Months
Bestseller
KnowledgeHut upGradKnowledgeHut upGradBackend Development Bootcamp
  • Self-Paced
upGradupGradUI/UX Bootcamp
  • 3 Months
upGradupGradCloud Computing Bootcamp
  • 7.5 Months
PwCupGrad CampusCertification Program in Financial Modelling & Analysis in association with PwC India
  • 5 Months
upGrad KnowledgeHutupGrad KnowledgeHutSAFe® 6.0 POPM Certification
  • 16 Hours
upGradupGradDigital Marketing Accelerator Program
  • 05 Months
upGradupGradAdvanced Certificate Program in GenerativeAI
  • 4 Months
New
upGradupGradData Science Bootcamp with AI
  • 6 Months
Popular
upGradupGradFull Stack Software Development Bootcamp
  • 6 Months
Bestseller
upGradupGradUI/UX Bootcamp
  • 3 Months
PwCupGrad CampusCertification Program in Financial Modelling & Analysis in association with PwC India
  • 4 Months
upGradupGradCertificate Course in Business Analytics & Consulting in association with PwC India
  • 06 Months
upGradupGradDigital Marketing Accelerator Program
  • 05 Months

Hashing in Data Structure: Function, Techniques [With Examples]

Updated on 10 July, 2024

184.01K+ views
14 min read

Hashing in Data Structure

Hashing in Data Structure is a fundamental concept that serves as the backbone for efficient data retrieval and storage mechanisms. Essentially, it involves converting a large or complex key into a smaller, fixed-size value, which is then used as an index to store the actual data in a hash table. This process significantly reduces the time it takes to find an item, as it allows direct access to the data instead of going through each element sequentially. My experience with hashing has been nothing short of transformative, enabling me to handle large datasets with ease and improve the performance of applications dramatically. 

From my early days in the field to my current projects, I’ve seen firsthand how hashing can streamline data processing and storage. The beauty of hashing lies in its simplicity and efficiency, making it a vital tool for anyone working with data structures. In this article, I’ll delve into more in-depth Hashing in Data Structure, exploring its functions and techniques and providing examples. Whether you’re just starting out or looking to deepen your understanding of data structures, I’m excited to share my insights and experiences to help you grasp the power of hashing. 

Check out our free courses to get an edge over the competition.

You can also consider doing our Java Bootcamp course from upGrad to upskill your career.

This blog will give you a deeper understanding of the hash method, hash tables, and linear probing with examples.

What is Hashing in Data Structure? 

Hashing in the data structure is a technique of mapping a large chunk of data into small tables using a hashing function. It is also known as the message digest function. It is a technique that uniquely identifies a specific item from a collection of similar items.

Featured Program for you: Fullstack Development Bootcamp Course 

It uses hash tables to store the data in an array format. Each value in the array has been assigned a unique index number. Hash tables use a technique to generate these unique index numbers for each value stored in an array format. This technique is called the hash technique.

You only need to find the index of the desired item, rather than finding the data. With indexing, you can quickly scan the entire list and retrieve the item you wish. Indexing also helps in inserting operations when you need to insert data at a specific location. No matter how big or small the table is, you can update and retrieve data within seconds.

The hash table is basically the array of elements and the hash techniques of search are performed on a part of the item i.e. key. Each key has been mapped to a number, the range remains from 0 to table size 1

Our learners also read: Data structures and Algorithms free course!

Types of hashing in data structure is a two-step process.

  1. The hash function converts the item into a small integer or hash value. This integer is used as an index to store the original data.
  2. It stores the data in a hash table. You can use a hash key to locate data quickly.

Examples of Hashing in Data Structure

The following are real-life examples of hashing in the data structure:

  • In schools, the teacher assigns a unique roll number to each student. Later, the teacher uses that roll number to retrieve information about that student.
  • A library has an infinite number of books. The librarian assigns a unique number to each book. This unique number helps in identifying the position of the books on the bookshelf.

Checkout: Sorting in Data Structure

What is Hash Function in DAA?

The hash function in a data structure maps the arbitrary size of data to fixed-sized data. It returns the following values:  a small integer value (also known as hash value), hash codes, and hash sums. The hashing techniques in the data structure are very interesting, such as: 

hash = hashfunc(key)

index = hash % array_size

The hash function must satisfy the following requirements:

  • A good hash function is easy to compute.
  • A good hash function never gets stuck in clustering and distributes keys evenly across the hash table.
  • A good hash function avoids collision when two elements or items get assigned to the same hash value.

One of the hashing techniques of using a hash function is used for data integrity. If using a hash function one change in a message will create a different hash. 

The three characteristics of the hash function in the data structure are:

  1. Collision free
  2. Property to be hidden
  3. Puzzle friendly

Hash Table

Hashing in data structure uses hash tables to store the key-value pairs. The hash table then uses the hash function to generate an index. Hashing uses this unique index to perform insert, update, and search operations.

It can be defined as a bucket where the data are stored in an array format. These data have their own index value. If the index values are known then the process of accessing the data is quicker.

How does Hashing in Data Structure Works? With Example

In hashing, the hashing function maps strings or numbers to a small integer value. Hash tables retrieve the item from the list using a hashing function. The objective of hashing technique is to distribute the data evenly across an array. Hashing assigns all the elements a unique key. The hash table uses this key to access the data in the list.

Hash table stores the data in a key-value pair. The key acts as an input to the hashing function. Hashing function then generates a unique index number for each value stored. The index number keeps the value that corresponds to that key. The hash function returns a small integer value as an output. The output of the hashing function is called the hash value.

Let us understand hashing in a data structure with an example. Imagine you need to store some items (arranged in a key-value pair) inside a hash table with 30 cells.

The values are: (3,21) (1,72) (40,36) (5,30) (11,44) (15,33) (18,12) (16,80) (38,99)

The hash table will look like the following:

Serial Number Key Hash Array Index
1 3 3%30 = 3 3
2 1 1%30 = 1 1
3 40 40%30 = 10 10
4 5 5%30 = 5 5
5 11 11%30 = 11 11
6 15 15%30 = 15 15
7 18 18%30 = 18 18
8 16 16%30 = 16 16
9 38 38%30 = 8 8

The process of taking any size of data and then converting that into smaller data value which can be named as hash value. This hash alue can be used in an index accessible in hash table. This process define hashing in data structure.

Also Read: Types of Data Structures in Python

Collision Resolution Techniques

Hashing in data structure falls into a collision if two keys are assigned the same index number in the hash table. The collision creates a problem because each index in a hash table is supposed to store only one value. Hashing in data structure uses several collision resolution techniques to manage the performance of a hash table.

It is a process of finding an alternate location. The collision resolution techniques can be named as-

  1. Open Hashing (Separate Chaining)
  2. Closed Hashing (Open Addressing)
  • Linear Probing
  • Quadratic Probing
  • Double Hashing

Linear Probing

Hashing in data structure results in an array index that is already occupied to store a value. In such a case, hashing performs a search operation and probes linearly for the next empty cell.

Linear probing in hash techniques is known to be the easiest way to resolve any collisions in hash tables. A sequential search can be performed to find any collision that occurred.

Learn Software Development Courses online from the World’s top Universities. Earn Executive PG Programs, Advanced Certificate Programs, or Masters Programs to fast-track your career.

Linear Probing Example

Imagine you have been asked to store some items inside a hash table of size 30. The items are already sorted in a key-value pair format. The values given are: (3,21) (1,72) (63,36) (5,30) (11,44) (15,33) (18,12) (16,80) (46,99).

The hash(n) is the index computed using a hash function and T is the table size. If slot index = ( hash(n) % T) is full, then we look for the next slot index by adding 1 ((hash(n) + 1) % T). If (hash(n) + 1) % T is also full, then we try (hash(n) + 2) % T. If (hash(n) + 2) % T is also full, then we try (hash(n) + 3) % T.

The hash table will look like the following:

Serial Number Key Hash Array Index Array Index after Linear Probing
1 3 3%30 = 3 3 3
2 1 1%30 = 1 1 1
3 63 63%30 = 3 3 4
4 5 5%30 = 5 5 5
5 11 11%30 = 11 11 11
6 15 15%30 = 15 15 15
7 18 18%30 = 18 18 18
8 16 16%30 = 16 16 16
9 46 46%30 = 8 16 17

What are the different hashing algorithms

Hashing algorithms are crucial for data security and integrity. Common types include MD5, used for checksums but not secure for cryptography; SHA-1, now deprecated due to vulnerabilities; and SHA-256 and SHA-3 from the Secure Hash Algorithm family, which offer enhanced security for modern needs. Bcrypt is another notable algorithm, designed specifically for secure password hashing by incorporating a salt to prevent attacks.

What are the different types of SHA

The Secure Hash Algorithm (SHA) family consists of several variants, each designed for specific security requirements. The primary types include SHA-1, which is now considered vulnerable and is being phased out; SHA-256 and SHA-512, which are part of the SHA-2 family, offering robust security and commonly used in various security applications and protocols; and SHA-3, the latest member of the family, designed to provide a higher level of security and an alternative to the SHA-2 series. These algorithms differ mainly in their bit length and complexity, providing varying degrees of security and performance.

Double Hashing

The double hashing technique uses two hash functions. The second hash function comes into use when the first function causes a collision. It provides an offset index to store the value.

The formula for the double hashing technique is as follows:

(firstHash(key) + i * secondHash(key)) % sizeOfTable

Where i is the offset value. This offset value keeps incremented until it finds an empty slot.

For example, you have two hash functions: h1 and h2. You must perform the following steps to find an empty slot:

  1. Verify if hash1(key) is empty. If yes, then store the value on this slot.
  2. If hash1(key) is not empty, then find another slot using hash2(key).
  3. Verify if hash1(key) + hash2(key) is empty. If yes, then store the value on this slot.
  4. Keep incrementing the counter and repeat with hash1(key)+2hash2(key), hash1(key)+3hash2(key), and so on, until it finds an empty slot.

Also visit upGrad’s Degree Counselling page for all undergraduate and postgraduate programs.

Double Hashing Example

Imagine you need to store some items inside a hash table of size 20. The values given are: (16, 8, 63, 9, 27, 37, 48, 5, 69, 34, 1).

h1(n)=n%20

h2(n)=n%13

n h(n, i) = (h1 (n) + ih2(n)) mod 20

n h(n,i) = (h’(n) + i2) %20
16 I = 0, h(n,0) = 16
8 I = 0, h(n,0) = 8
63 I = 0, h(n,0) = 3
9 I = 0, h(n,0) = 9
27 I = 0, h(n,0) = 7
37 I = 0, h(n,0) = 17
48

I = 0, h(n,0) = 8

I = 0, h(n,1) = 9

I = 0, h(n,2) = 12

5 I = 0, h(n,0) = 5
69

I = 0, h(n,0) = 9

I = 0, h(n,1) = 10

34 I = 0, h(n,0) = 14
1 I = 0, h(n,0) = 1


Conclusion

Hashing in Data Structure is a pivotal concept that underscores the efficiency and effectiveness of data retrieval and storage in computer science. Through the exploration of hash functions, hash tables, and the operational mechanics of hashing, we’ve uncovered how this technique streamlines processes and ensures rapid access to data. Moreover, the discussion on collision resolution techniques, such as linear probing and double hashing, illuminates the adaptability and resilience of hashing in managing data conflicts. 

For mid-career professionals, mastering these aspects of hashing is not merely an academic exercise but a practical necessity. The ability to implement and optimize hashing algorithms can significantly impact the performance of software applications. As we continue to navigate the complexities of data structures, let the principles and examples outlined herein serve as a robust foundation for enhancing your computational problem-solving skills. Remember, the power of Hashing in Data Structure lies in its ability to transform abstract data into a structured, accessible format, paving the way for innovative solutions in the digital age.

You can try out the example to strengthen your data structure knowledge. If you are curious to know more about data structure, check out the upGrad Executive PG Programme in Full Stack Development course. This course is designed for working professionals and offers rigorous training and job placement with top companies.

Frequently Asked Questions (FAQs)

1. What is a hash table?

A hash table is an implementation of an associative array, a structure used in computer programming to implement an abstract data type (ADT). In an abstract data type, the programmer does not need to know about the implementation details of the data type (such as how the data is stored in memory), only the operations that can be performed on the data type. A hash table uses a hash function to compute an index into an array of buckets or slots, from which the desired value can be found. Hash Tables are used to implement map-like data structures. Hash tables are very much in use in modern computers for implementing things like dictionaries (as in python), associative arrays (as in PHP), java hashtables, etc. Hash tables are usually implemented in languages as an array of values sorted by their keys. This makes look up and insert/delete operations very fast, as the data is stored systematically in memory.

2. What are the applications of hashing functions?

Hashing functions are used for several applications in computer science, for example, cryptography and document fingerprinting. The main purpose of a hashing function is to map large amounts of input to a fixed length output. In cryptography, hashing is used to ensure that a message or document has not been tampered with. If the document or message is altered in any way (even a single character), the hash value is also altered. It is therefore almost impossible to create a document or message with a given hash value.

3. What are the collision resolution techniques in hashing?

Collision resolution techniques in hashing are used to resolve collisions in hashing. Collision resolution techniques are either chaining or open addressing. In chaining, we retain the old element in place and insert the new element in the next available space. It is a simple method of collision resolution but has a drawback of poor performance. In open addressing, we replace the old element with new element and mark the old element as a collision.

4. What is key in hashing?

These are types of hashing in a data structure, the static hashing gives access to the user to lookup at the finalised dictionary, the finalised dictionary cannot be changed. Whereas, the dynamic dictionary allows the data to be moved based on the demand, as the data can be added or removed. The final result also changes the basis of the records.

5. What is meant by public key?

It is a key available to other people. Its common uses are the transfer of bitcoins, securing web sessions, etc. There is no compromise on the security as two keys are required.

6. What is private key used for?

It is a way to encrypt or decrypt data. For example, If I send a locked file to my friend over mail that is password protected. My friend is aware of the passcode, so they would decrypt the file by inserting the passcode. Private key is efficiency as only single key is required.

7. What is SSH public key?

SSH is a combination of a public or private key. SSH is a pair of keys used to authenticate and decrypt a message from a remote location. The public key can be accessed by both the stakeholders and the remoter servers.

9. What is a hash table in data structures?

A hash table is a data structure that stores data in an associative manner, using a hash function to compute an index into an array of slots or buckets from which the desired value can be found. This allows for efficient searching, as the direct access nature of the hash table reduces the need for iterative searches.

10. What is a collision in hashing in data structures?

A collision in hashing occurs when two different keys hash to the same index in a hash table. To resolve collisions, methods such as chaining (where each bucket stores multiple items as a linked list) or open addressing (where a sequential or probing search is conducted to find an empty slot) are used.

RELATED PROGRAMS