I’m trying to implement my own hash function, i add up the ASCII numbers of each string, using java. I find the hash code by finding the mod of the size of the hash table and the sum. size%sum. I was wondering if there was a way to use the same process but reduce collisions, when searching for the string?
Thanks in advance.
I would look at the code for String and HashMap as these have a low collision rate and don’t use
%and handle negative numbers.From the source for String
From the source for HashMap
As the HashMap is always a power of 2 in size you can use
and
Using
&is much faster than%and only return positive numbers as length is positive.