Я читал об интервью этого человека "в известной поисковой компании".
http://asserttrue.blogspot.com/2009/05/one-of-toughest-job-interview-questions.html
Ему задали вопрос, который привел его к реализации хеш-таблицы. Он сказал следующее:
HASH = INITIAL_VALUE;
FOR EACH ( CHAR IN WORD ) {
HASH *= MAGIC_NUMBER
HASH ^= CHAR
HASH %= BOUNDS
}
RETURN HASH
Я объяснил, что длина массива хэш-таблицы должна быть простой, а число BOUNDS меньше длины таблицы, но взаимно просто с длиной таблицы.
Почему число BOUNDS должно быть меньше количества ведер? Что делает взаимно простое с длиной таблицы? Разве это не должно быть взаимно простым с ГРАНИЦАМИ?