Моя функция хеш-кода для строки выглядит следующим образом
hashVal=(127*hashVal+key.charAt(i))%16908799
Я слежу за лекциями по cs61 b в Интернете, и я не совсем понимаю, когда профессор Джонатан говорит о том, что произойдет, если вместо 1690877 мы будем использовать значение, которое не является взаимно простым с 127. Я понимаю простой случай, когда он использует 127 вместо 16908799, но что, если бы это было простое кратное 127? Как это "искажает" хеш-значение? Как смещение зависит от общего множителя «х»? Может ли кто-нибудь предложить мне причину?