Я имею в виду статью ниже при прохождении концепции функции ha sh. http://www.cs.cmu.edu/afs/cs/academic/class/15451-f14/www/lectures/lec6/karp-rabin-09-15-14.pdf
Мой вопрос таков: если строка «abcd»
prevHashValue (for abc) = (a+b+c) % 101 (any prime for ex)
newHashValue (for bcd) = (prevHashValue - (a % 101)) + d
newHashValue = newHashValue % 101
, почему нам нужно снова выполнить все модули на шаге 3. Почему это требуется? Это может быть очень базовая c математическая концепция, но, пожалуйста, помогите мне понять.
Заранее спасибо.