C ++ Повышение хеш-вычисления без коллизий - PullRequest
0 голосов
/ 24 сентября 2019

Я использую Boost: crc32 для вычисления контрольной суммы, но происходит конфликт.Может ли кто-нибудь предложить альтернативный алгоритм в Boost, который даст уникальную контрольную сумму для строки

1 Ответ

1 голос
/ 24 сентября 2019

Не существует контрольной суммы фиксированного размера для строки, которая также является уникальной, поскольку строки не имеют фиксированного размера.Хеш-пространство меньше строкового.

При этом попробуйте boost::hash или std::hash, они, вероятно, используют murmur2 / 3, который, вероятно, имеет вероятность столкновения настолько низкую, насколько это статистически возможно.

См. Также строковые хэш-функции

...