C中字符串的FNV哈希
下面是算法所说的C中字符串的FNV哈希,c,hash,fnv,C,Hash,Fnv,下面是算法所说的 hash = FNV_offset_basis for each octet_of_data to be hashed hash = hash * FNV_prime hash = hash XOR octet_of_data return hash 但是如果我有一组字符串,那么我应该以什么作为FNV_offset_的基础呢 每八位字节的散列数据的含义是什么 表的大小也应该是多少,比如说有N个字符串需要散列 请帮助我修改字符串 谢谢。从上述评论中引用的网站 3
hash = FNV_offset_basis
for each octet_of_data to be hashed
hash = hash * FNV_prime
hash = hash XOR octet_of_data
return hash
但是如果我有一组字符串,那么我应该以什么作为FNV_offset_的基础呢
每八位字节的散列数据的含义是什么
表的大小也应该是多少,比如说有N个字符串需要散列
请帮助我修改字符串
谢谢。从上述评论中引用的网站
32 bit offset_basis = 2166136261
64 bit offset_basis = 14695981039346656037
使用与哈希宽度对应的值
八位字节是一个8位字节。如果使用8位字符的文本,则八位字节和字符是相同的
桌子的大小由你决定;当然,一定要使其大于N!它越大,碰撞就越少。FNV\u offset\u基是“chongo/\../\”的FNV-0散列,正如网站上解释的那样:@Porges我不能得到任何更简单的含义吗。?