hashexperiments:哈希实验-源码

上传者: 42133969 | 上传时间: 2021-07-13 12:20:25 | 文件大小: 16KB | 文件类型: ZIP
哈希实验 hashexperiments - 如果您以前从未进行过洗牌,您如何洗牌? 或者,“什么是实现 shuffle 的最疯狂的方法……它确实有效!” shuffle 算法的标准方法是 Knuth shuffle,但是当向我提出问题时,我从未听说过它并想出了一个......稍微不同的方法。 我知道散列函数应该在随机分布数字方面做得很好,而且对于一个好的散列函数,输入中的单个位翻转平均应该翻转一半的输出位(雪崩特性)。 我知道这一点,因为我一直在优化哈希表,他们依赖于此。 因此,要随机化输入,您可以将输入与随机种子值连接起来,然后插入到哈希表中(只要碰撞解决方案足够智能,可以在数字上方和下方平均分配碰撞)。 这证明尽管听起来很奇怪,但这种方法确实有效并提供了大量的随机性。 它也非常适合并行执行(大部分计算都在散列中,一个好的并发散列表实现应该在并行插入时遇到接近零的锁争用)。

文件下载

资源详情

[{"title":"( 12 个子文件 16KB ) hashexperiments:哈希实验-源码","children":[{"title":"hashexperiments-master","children":[{"title":"src","children":[{"title":"test","children":[{"title":"java","children":[{"title":"com","children":[{"title":"codeablereason","children":[{"title":"hashexperiments","children":[{"title":"TestLongHashSet.java <span style='color:#111;'> 2.71KB </span>","children":null,"spread":false},{"title":"TestHashShuffle.java <span style='color:#111;'> 2.53KB </span>","children":null,"spread":false}],"spread":true}],"spread":true}],"spread":true}],"spread":true}],"spread":true},{"title":"main","children":[{"title":"java","children":[{"title":"com","children":[{"title":"codeablereason","children":[{"title":"hashexperiments","children":[{"title":"hashfunctions","children":[{"title":"Murmur3Hash.java <span style='color:#111;'> 437B </span>","children":null,"spread":false},{"title":"JavaLongHash.java <span style='color:#111;'> 317B </span>","children":null,"spread":false},{"title":"Md5Hash.java <span style='color:#111;'> 420B </span>","children":null,"spread":false}],"spread":true},{"title":"LongHashFunction.java <span style='color:#111;'> 352B </span>","children":null,"spread":false},{"title":"LongHashSet.java <span style='color:#111;'> 5.76KB </span>","children":null,"spread":false},{"title":"HashShuffle.java <span style='color:#111;'> 4.76KB </span>","children":null,"spread":false}],"spread":true}],"spread":true}],"spread":true}],"spread":true}],"spread":true}],"spread":true},{"title":"LICENSE <span style='color:#111;'> 11.06KB </span>","children":null,"spread":false},{"title":"README.md <span style='color:#111;'> 1.20KB </span>","children":null,"spread":false},{"title":"pom.xml <span style='color:#111;'> 1.05KB </span>","children":null,"spread":false},{"title":".gitignore <span style='color:#111;'> 171B </span>","children":null,"spread":false}],"spread":true}],"spread":true}]

评论信息

免责申明

【只为小站】的资源来自网友分享,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,【只为小站】 无法对用户传输的作品、信息、内容的权属或合法性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论 【只为小站】 经营者是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。
本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二条之规定,若资源存在侵权或相关问题请联系本站客服人员,zhiweidada#qq.com,请把#换成@,本站将给予最大的支持与配合,做到及时反馈和处理。关于更多版权及免责申明参见 版权及免责申明