Это префиксная хеш-функция. я хочу подсчитать количество столкновений в этом методе, но я не уверен, как это сделать. Кажется, что это может быть просто, но я просто не могу придумать отличный способ сделать это....
int HashTable_qp::preHash(string & key, int tableSize )
{
string pad = "AA";
//some words in the input are less than 3 letters
//I choose to pad the string with A because all padded characters
//have same ascii val, which is low, and will hopefully alter the results less
if (key.length() < 3)
{
key.append(pad);
}
return ( key[0] + 27 * key[1] + 729 * key[2] ) % tableSize;
}