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

Автор scorpion, 13 лет назад, По-русски

Всем привет!!!

Подскажите пожалуйста пару приёмов придумывать хорошие хеш-функции.

Спасибо.

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

13 лет назад, # |
  Проголосовать: нравится -38 Проголосовать: не нравится

Ты уже восемь месяцев на кодфорсе, и еще не научился гуглить? Тогда погуглю я. Новый велосипед.  


  • 13 лет назад, # ^ |
      Проголосовать: нравится +21 Проголосовать: не нравится
    Думаю, лучше посоветоваться с кем-то на кодефорсе (ведь для этого открыт форум), чем гуглить. И велосипед тут вообще неочем.
    • 13 лет назад, # ^ |
      Rev. 2   Проголосовать: нравится +1 Проголосовать: не нравится

      Ну частично все таки велосипед, т.к. уже писали даже на самом codefoces и тут.

      Хотя сам не против чтобы кто нибудь по велосипедил тут, может какие нибудь новые фичи опишет в виде "усиленной рамы" или "сверхскоростной передачи".
13 лет назад, # |
  Проголосовать: нравится +17 Проголосовать: не нравится
А чего их придумывать? По большому счёту в олимпиадных задачах в основном полиномиальные хэши используются (для строк например). Ну или сумма со случайными коэффициентами (если свой hash_set/hash_map писать).
А если одного мало (коллизии мучают или просто для верности), можно несколько считать (например три полиномиальных хэша с разными иксами по модулю 232 чтобы строки сравнивать).
13 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
вот тут почитай, и придумывать самому хэши не надо, обычно это добром не кончается
  • 13 лет назад, # ^ |
      Проголосовать: нравится +2 Проголосовать: не нравится
    почему нет? Новая хеш-функция может быть темой курсовой работы, почему это не должно добром заканчиваться?
    • 13 лет назад, # ^ |
        Проголосовать: нравится 0 Проголосовать: не нравится
      просто уже известные хэш-функции работают с большой вероятностью и работают в принципе, а вот самопальная хэш-функция, особенно ничем не обоснованная может подвести
      • 13 лет назад, # ^ |
          Проголосовать: нравится +1 Проголосовать: не нравится
        А почему вы делаете вывод, что она будет ничем не обоснованной?
        • 13 лет назад, # ^ |
            Проголосовать: нравится 0 Проголосовать: не нравится
          >>а вот самопальная хэш-функция, особенно ничем не обоснованная может подвести   ну я в том смысле, что если она таковой будет
13 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
Вот этот блог прочти. И особенно это.