Hashing Data StructureLast Updated : 27 Sep, 2023ReadDiscussCoursesDSA for BeginnersLearn more about Hashing in DSA Self Paced CoursePractice Problems on HashingTop Quizzes on HashingWhat is Hashing?Hashing is a technique or process of mapping keys, and values into the hash table by using a hash function. It is done for faster access to elements. The efficiency of mapping depends on the efficiency of the hash function used.Let a hash function H(x) maps the value x at the index x%10 in an Array. For example if the list of values is [11,12,13,14,15] it will be stored at positions {1,2,3,4,5} in the array or Hash table respectively.Hashing Data StructureTopics:IntroductionStandard problems on HashingIntroduction:Introduction to Hashing – Data Structure and Algorithm TutorialsWhat is Hashing?Index Mapping (or Trivial Hashing)Separate Chaining for Collision HandlingOpen Addressing for Collision HandlingDouble HashingLoad Factor and RehashingStandard problem on Hashing:Easy:Find whether an array is subset of another arrayUnion and Intersection of two linked listsGiven an array A[] and a number x, check for pair in A[] with sum as xMaximum distance between two occurrences of same element in arrayCount maximum points on same lineMost frequent element in an arrayFind the only repetitive element between 1 to n-1How to check if two given sets are disjoint?Non-overlapping sum of two setsCheck if two arrays are equal or notFind missing elements of a rangeMinimum number of subsets with distinct elementsRemove minimum number of elements such that no common element exist in both arrayFind pairs with given sum such that elements of pair are in different rowsCount pairs with given sumCount quadruples from four sorted arrays whose sum is equal to a given value xSort elements by frequencyFind all pairs (a, b) in an array such that a % b = kGroup words with same set of charactersk-th distinct (or non-repeating) element in an array.Medium:Find Itinerary from a given list of ticketsFind number of Employees Under every EmployeeLongest subarray with sum divisible by kFind the largest subarray with 0 sumLongest Increasing consecutive subsequenceCount distinct elements in every window of size kDesign a data structure that supports insert, delete, search and getRandom in constant timeFind subarray with given sum | Set 2 (Handles Negative Numbers)Implementing our Own Hash Table with Separate Chaining in JavaImplementing own Hash Table with Open Addressing Linear Probing in C++Minimum insertions to form a palindrome with permutations allowedMaximum possible difference of two subsets of an arraySorting using trivial hash functionSmallest subarray with k distinct numbersHard:Clone a Binary Tree with Random PointersLargest subarray with equal number of 0s and 1sAll unique triplets that sum up to a given valuePalindrome Substring QueriesRange Queries for Frequencies of array elementsElements to be added so that all elements of a range are present in arrayCuckoo Hashing – Worst case O(1) Lookup!Count subarrays having total distinct elements same as original arrayMaximum array from two given arrays keeping order sameFind Sum of all unique sub-array sum for a given array.Recaman’s sequenceLength of longest strict bitonic subsequenceFind All Duplicate SubtreesFind if there is a rectangle in binary matrix with corners as 1Quick Links :‘Practice Problems’ on HashingTop 20 Hashing Technique based Interview Questions‘Quizzes’ on Hashing‘Videos’ on HashingRecomended:Learn Data Structure and Algorithms | DSA TutorialIf you like GeeksforGeeks and would like to contribute, you can also write an article using write.geeksforgeeks.org or mail your article to review-team@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above.