Skip to main content
Glossary Term

Hash function

Overview and Properties of Hash Functions - A hash function takes a key as an input to identify data in a storage and retrieval application. - The output is a hash code used to index a hash table. - A good hash function should be fast to compute and minimize collisions. - Uniformity in hash values is important for efficient performance. Hash Tables and Collision Resolution - Hash functions are used with hash tables to store and retrieve data items. - Collision resolution is required when a hash code indexes a full slot. - The collision resolution procedure depends on the structure of the hash table. Specialized Uses of Hash Functions - Hash functions are used to build caches for large data sets. - They are used in the Bloom filter and geometric hashing. - Hash tables are used to implement associative arrays and dynamic sets. Testing, Measurement, and Efficiency of Hash Functions - The uniformity of hash values can be evaluated using the chi-squared test. - Hash functions should balance search time and data storage space. - Computational complexity varies with different methods. - Faster hash functions are preferred over ones with more computation but fewer collisions. Applicability and Variations of Hash Functions - Hash functions are applicable in integrity checks, key derivation, MACs, and password storage. - Deterministic hash functions always generate the same hash value for a given input. - Hash functions can have a fixed or variable range of hash values. - Dynamic hash functions minimize record relocation. - Data normalization is important for accurate comparison results. - There are variations of hash functions such as algebraic coding, unique permutation hashing, and customized hash functions. - Hash functions for variable-length data should consider all characters of the string.