Java 基于随机数的标量积的字符串哈希函数
我正在做一个大学作业,包括创建一个带有自定义哈希函数的分布式哈希表,以便在存储(节点)之间分发密钥 在课堂上,我们学习了“好的”通用散列函数族的形式定义,因此冲突概率是表大小的1(该大小为素数) 生成哈希的过程如下(表的m大小):Java 基于随机数的标量积的字符串哈希函数,java,hash,Java,Hash,我正在做一个大学作业,包括创建一个带有自定义哈希函数的分布式哈希表,以便在存储(节点)之间分发密钥 在课堂上,我们学习了“好的”通用散列函数族的形式定义,因此冲突概率是表大小的1(该大小为素数) 生成哈希的过程如下(表的m大小): w=log2(m) 将密钥分成w位的部分 k=m/w 将每个部分解释为[0,2^w-1]中的数字 生成一个长度为k的随机数向量 散列是部分作为向量和随机数mod m的向量的标量积 该程序已被证明具有上述特性 在赋值中,我必须将字符串作为键来实现它。但是,字符串只能(轻
哈希函数是否仍然使用w'通用,或者我必须将字符串分成w位的一部分?为什么不能将字符串转换为位?即使在stackoverflow中也有很多解决方案,比如:我可以,我已经实现了一个解决方案。我的问题是,它是否仍然具有相同的碰撞概率。