Легенда:
новое сообщение
закрытая нитка
новое сообщение
в закрытой нитке
старое сообщение
|
- Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
- Новичкам также крайне полезно ознакомиться с данным документом.
Есть вариант а-ля xor-shift, только немного лучше. 14.01.08 14:03 Число просмотров: 2362
Автор: leo <Леонид Юрьев> Статус: Elderman
|
Попробуй rot13 с http://vak.ru/doku.php/proj/hash/efficiency.
Если сильно хочеться распределение близкое у идеальному, то:
unsigned super_hash (const _TCHAR *s)
{
unsigned __int64 h;
for (h = 0; *s; s++)
h = 6364136223846793005ui64 * (h + s[0]) + 5975218566490153283ui64;
return (unsigned) (h >> 32);
}
---
P.S.
64-битное умножение (по модулю 2^64) легко заменить на два 32-битных умножения и __emulu();
|
|
|