[問題] Hash function
開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
請問有人用過 hash 33 的 hash function嗎?
又稱做 DJBX 33
Google到的資料大部分是這樣的:
unsigned long hashFun(char *key)
{
unsigned value = 0; //也有 = 5381 的
int i = 0;
for(i=0; i<strlen(key); i++)
value = value * 33 + key[i];
return value;
}
但是這樣子算出來的 value 很大,至少有六位數以上
想請問這樣子表示我的 hash table 應該要準備多少呢???
還是有另外的使用方式?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 111.242.16.38
→
05/27 22:20, , 1F
05/27 22:20, 1F
→
05/28 00:49, , 2F
05/28 00:49, 2F
→
05/28 01:02, , 3F
05/28 01:02, 3F