Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Hash function
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
=== Variable range with minimal movement (dynamic hash function) === When the hash function is used to store values in a hash table that outlives the run of the program, and the hash table needs to be expanded or shrunk, the hash table is referred to as a dynamic hash table. A hash function that will relocate the minimum number of records when the table is resized is desirable. What is needed is a hash function {{math|''H''(''z'',''n'')}} (where {{math|''z''}} is the key being hashed and {{math|''n''}} is the number of allowed hash values) such that {{math|1=''H''(''z'',''n'' + 1) = ''H''(''z'',''n'')}} with probability close to {{math|''n''/(''n'' + 1)}}. [[Linear hashing]] and [[spiral hashing]] are examples of dynamic hash functions that execute in constant time but relax the property of uniformity to achieve the minimal movement property. [[Extendible hashing]] uses a dynamic hash function that requires space proportional to {{math|''n''}} to compute the hash function, and it becomes a function of the previous keys that have been inserted. Several algorithms that preserve the uniformity property but require time proportional to {{math|''n''}} to compute the value of {{math|''H''(''z'',''n'')}} have been invented.{{clarify|date=September 2019}} A hash function with minimal movement is especially useful in [[distributed hash table]]s.
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)