Hash functions: An empirical comparison 
(Peter Kankowski) Hash tables are popular data structures for storing key-value pairs. A hash function is used to map the key value (usually a string) to array index. The functions are different from cryptographic hash functions, because they should be much faster and don't need to be resistant to preimage attack. There are two classes of the functions used in hash tables:
--multiplicative hash functions, which are simple and fast, but have a high number of collisions;
--more complex functions, which have better quality, but take more time to calculate.
Read Article >>