Блог пользователя I_am_Drew

Автор I_am_Drew, история, 4 года назад, По-русски

Я придумал новый алгоритм хеширования списком с помощью которого вы сможете хешировать списки, когда вам это захочется. Секрет прост:

Пусть B — это dict (map) ar = list (vector)

Тогда для списка состоящего из двух элементов нам надо сопоставить вот такому числу:

B[pow(ar[0], 37, 1000000007) + pow(ar[1], 43, 1000000007)] = [ar[0], ar[1]]

Таким образом мы сопоставили списку из 2 элементов число!!!

Чем больше элементов в списке, тем мы дальше можем добавлять pow(ar[i], P_i, 1000000007), где i — след. индекс в списке (векторе), а P_i след. простое число.

При таком хешировании списков (векторов) мы сможете с вероятностью 95-99% загнать задачу на OK не сильно заморачиваясь!!!

Надеюсь, статья была полезна!

  • Проголосовать: нравится
  • +3
  • Проголосовать: не нравится

»
4 года назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

Вау, очень интересно и крутой алгоритм)

»
4 года назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

ОК — это очень хорошо!!!

Жаль, что довольно сложно : (((

Теперь мне будет не так сложно!

Ты мой герой!!!