public int GetHashValue(string strInput)
{
int result = 0 ;
uint hash = 0;
int i = 0;
int sum = 0;
for (i = 0; i < (strInput.Length - 3); i = i + 4)
{
int a = strInput[i];
a = (a << 8) + strInput[i + 1];
a = (a << 8) + strInput[i + 2];
a = (a << 8) + strInput[i + 3];
sum += a;
}
for (; i < strInput.Length; i ++ )
{
int a = strInput[i];
sum += a;
}
result = sum % 65535;
return result;
{
int result = 0 ;
uint hash = 0;
int i = 0;
int sum = 0;
for (i = 0; i < (strInput.Length - 3); i = i + 4)
{
int a = strInput[i];
a = (a << 8) + strInput[i + 1];
a = (a << 8) + strInput[i + 2];
a = (a << 8) + strInput[i + 3];
sum += a;
}
for (; i < strInput.Length; i ++ )
{
int a = strInput[i];
sum += a;
}
result = sum % 65535;
return result;
}
其中:65535是可以调整的
本文介绍了一种计算字符串哈希值的方法,通过遍历字符串并将每个字符转换为整数进行累加,最后取模得到哈希值。这种方法适用于简单的字符串匹配场景。

2117

被折叠的 条评论
为什么被折叠?



