这个散列函数有什么问题?具体来说,当N = 127被传入时会发生什么?这个散列有什么问题?
int hash3(char *k, int N)
{
char *c; int h = 0;
for (c = k; *c != '\0'; c++) {
h = h | *c;
}
return (h % N);
}
这是一个在实践考试中出现的问题(不幸的是,没有解决方案)。据我了解,该函数使用按位或将字符串转换为整数,并将其放在一个大小为N的表格中,但我不知道为什么它会出错。提前致谢。
尝试输入一些长句子,看看会返回什么。 – ymonad 2014-11-05 02:39:43