Подскажите хорошую ХЭШ функцию
y=f(x)
где x - слово произвольной длины,
а y - 2-ух байтное целое ??
Я сейчас использую сумму все симолов, но это не функция, а скорее отмаза какая-то.
Вопрос четче можно сформулировать:)
Так вот, этот самый int зависит от слова. Каждому слову соответствует только один int, но каждому int'у может соответствовать несколько слов.
Мне надо придумать такую функцию, чтобы количество слов соответствующих int'у было как можно меньше.
Например:
-------------
y=f(x)
y=f("ток")
y=100
-------------
y=f(x)
y=f("кот");
y=100;
В качестве ХЭШ функции я сейчас использую сумму всех символов, и он меня не устраивает.
Может кто подскажет более выгодную ХЭШ функцию ??
Что лучше, это тебе смотреть
Очень мощьная штука.
Набери в поисковике Standart Template Library
Попробуй CRC32 или CRC64. Для поиска, имхо, рулез. Вероятность того, что для двух слов будут одинаковые CRC = 2^(-32) для CRC32 и 2^(-64) для 64. Если нужны исходники CRC32 пиши на мыло [EMAIL]kdg_stu@mail.ru[/EMAIL]