码迷,mamicode.com
首页 > 其他好文 > 详细

Hash的一点测试

时间:2017-12-03 14:45:18      阅读:136      评论:0      收藏:0      [点我收藏+]

标签:速度   数据   str   size   不能   bsp   strong   今天   字符串   

哈希表的学习与测试

以前写的hash都是碰运气的hash,就是乘上质数取模的那种,这样不能保证不碰撞,所以今天先写上几个双hush和链表的hash,并比较一下他们的速度,测试的话用洛谷上的“字符串哈希”题目进行测试。

 

Hash1:碰撞三个点 用时352ms

/*

这个是只进行一次取质数的hash    第一次尝试    取key值127  mod值 10000000

*/

 

Hash2:碰撞三个点 用时360ms

/*

这个也是只进行一次取质数的           hush key值131     mod值换成了质数 12345701

*/

Hash3:碰撞两个点 用时228ms

/*

自然溢出加上取模的hush   模数为12345701   速度要高于纯取模的

*/

Hash4:通过所有点 用时 492ms

/*

Hash1和Hash2合并起来进行双哈希  速度有些慢

*/

Hash5:通过所有点 用时280ms

/*

进行两次自然溢出哈希 结果挺快也挺稳的

*/

Hash6:通过所有点 用时216ms

/*

采用单次自然溢出哈希加上链表的方法 适合比较松散的数据  然后是可以处理碰撞的 qwq

*/

Hash的一点测试

标签:速度   数据   str   size   不能   bsp   strong   今天   字符串   

原文地址:http://www.cnblogs.com/luoyibujue/p/7965992.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!