Главная страница


ru.algorithms

 
 - RU.ALGORITHMS ----------------------------------------------------------------
 From : Oleg Khovayko [SPAM trap - don't re  2:5020/400     10 Jul 2003  05:06:04
 To : Alexey V. Skoufyin
 Subject : Re: Хэш функция
 -------------------------------------------------------------------------------- 
 
 
 
 Alexey V. Skoufyin wrote:
 
 > Hарод! Подскажите хэш-функцию для строк (длина строки не более 100
 > символов), дающую более-менее равномерное распределение ключа в интервале
 > 0..n-1, n < 1024
 
 Простейшее решение без всяких таблиц и т.п.
 Cчитает хеш, правда, только по 32-м первым символам, но для
 нормальных строк этого вполне достаточно.
 int h(const char *s) {
    int rc = 0x5555;
    char c;
    while((c = *s++) && (rc = (rc << 1) + c) > 0);
    return ((unsigned)rc) % n;
 }
 -- 
 #include <best/regards>
 Oleg Khovayko  http://olegh.spedia.net
 PS/ATTN: Reply to reverted address net.comcast@olegh
 
 --- ifmail v.2.15dev5
  * Origin: http://www.ftc.gov/opa/2001/04/spam.htm (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Хэш функция   Alexey V. Skoufyin   02 Jul 2003 15:58:17 
 Re: Хэш функция   Nick Ivanych Kovaliov   02 Jul 2003 17:00:41 
 Хэш функция   Oleg Khrulev   02 Jul 2003 17:16:42 
 Re: Хэш функция   Dmitriy Iassenev   02 Jul 2003 18:07:43 
 Re: Хэш функция   Oleg Khovayko [SPAM trap - don\'t re   10 Jul 2003 05:06:04 
Архивное /ru.algorithms/5488663f639f.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional