码迷,mamicode.com
首页 >  
搜索关键字:bkdrhash    ( 30个结果
哈希表之bkdrhash算法解析及扩展
BKDRHASH是一种字符哈希算法 由一个字符串(比如:ad)得到其哈希值,为了减少碰撞,应该使该字符串中每个字符都参与哈希值计算,使其符合雪崩效应,也就是说即使改变字符串中的一个字节,也会对最终的哈希值造成较大的影响。我们直接想到的办法就是让字符串中的每个字符相加,得到其和SUM,让SUM作为哈希值,如SUM(ad)= a+d;可是根据ascii码表得知a(97)+d(100)=b(98)+c...
分类:编程语言   时间:2014-10-24 14:35:16    阅读次数:161
hdu4821 字符串 hash (bkdrhash)
题意: 给一个字符串,和m,l, 找出这样的子串: 长度为m*l, 由m个长度为l的串组成,每个串都不同。(s,size() 字符串hash典例。 这里用的是bkdrhash 法。也是最常用的冲突最少的一种。原理:把字符串和数值对应。这里用base=31(一般用质数), 先是扫一遍,处理处每个位子到结尾构成的串的hash值(倒过来的),然后长度为l的子串的haash值就好算了。 之后枚举开头...
分类:其他好文   时间:2014-09-19 17:45:45    阅读次数:147
逐步实现hash算法(基于BKDRhash函数)
哈希(Hash)算法,即散列函数。它是一种单向密码体制,即它是一个从明文到密文的不可逆的映射,只有加密过程,没有解密过程。同时,哈希函数可以将任意长度的输入经过变化以后得到固定长度的输出。hash算法一般用于快速查找和加密。hash算法可以使用的哈希函数种类很多,处理冲突的方法也有开放定址、再哈希、...
分类:其他好文   时间:2014-09-11 19:02:02    阅读次数:284
常用hash函数对比分析(一)
主要目标:寻找一个hash函数,高效的支持64位整数运算,使得在速度、空间等效率相对其它函数函数较高,以及内部运算时32位整数运算。测试了"RSHash","JSHash","PJWHash","ELFHash","BKDRHash","SDBMHash","DJBHash","DEKHash","...
分类:其他好文   时间:2014-08-07 00:38:27    阅读次数:223
HDOJ--4821--String【字符串hash】
链接:http://acm.hdu.edu.cn/showproblem.php?pid=4821 题意:给一个字符串,选m个长度为l的子串组成新的串,要求这m个子串互不相同,问有多少种组合。 字符串hash题目,以前没做过,做这道之前还用bkdrhash做了两道简单的题目,POJ1200和HDU1800。 用base数组记录乘了几个seed,base[i]表示seed^i,这个数组...
分类:其他好文   时间:2014-07-24 10:36:14    阅读次数:244
HDU 4821 String 字符串哈希
链接:http://acm.hdu.edu.cn/showproblem.php?pid=4821 题意:给出M和L,和一个字符串S。要求找出S的子串中长度为L*M,并且可以分成M段,每段长L,并且M段都不相同的子串个数。 思路:一道字符串哈希题。哈希的方法是BKDRHash,哈希中进制是31,131等素数,(我还以为这是我自己想出来的哈希方法,原来不是,而且进制也不是我选择的26,而是31这...
分类:其他好文   时间:2014-07-21 23:11:04    阅读次数:226
【转】各种字符串Hash函数比较
常用的字符串Hash函数还有ELFHash,APHash等等,都是十分简单有效的方法。这些函数使用位运算使得每一个字符都对最后的函数值产生影响。另外还有以MD5和SHA1为代表的杂凑函数,这些函数几乎不可能找到碰撞。常用字符串哈希函数有BKDRHash,APHash,DJBHash,JSHash,R...
分类:其他好文   时间:2014-07-09 16:32:44    阅读次数:132
Bloom filter的实现以及常用的hash函数
Bloom filter的实现以及常用的hash函数 bloom filter利用时间换空间的思想,利用多个哈希函数,将一个元素的存在状态映射到多个bit中,特别是在网络环境中,BF具有广泛的用途,关键问题就是要减少false positive rate(可以设置参数来调节),扩展有 counting BF。这里选用的hash函数是表现较好的 BKDRHash , SDBMHash, D...
分类:其他好文   时间:2014-06-13 20:42:05    阅读次数:412
BKDRHash算法的初步了解
字符串hash最高效的算法, 搜了一下, 原理是:字符串的字符集只有128个字符,所以把一个字符串当成128或更高进制的数字来看,当然是唯一的这里unsigned不需要考虑溢出的问题, 不过周神说:碰撞率很小是因为n阶多项式最多n个根. 也是有道理的.最后 hash & 0x7FFFFFFF 只是为...
分类:其他好文   时间:2014-05-15 16:53:27    阅读次数:401
cf244D. Match & Catch 字符串hash (模板)或 后缀数组。。。
D. Match & Catch 可以用各种方法做,字符串hash,后缀数组,dp,拓展kmp,字典树。。。 字符串hash(模板) http://blog.csdn.net/gdujian0119/article/details/6777239 BKDR Hash Function : // BKDR Hash Function unsigned int BKDRHash(c...
分类:其他好文   时间:2014-05-03 21:20:47    阅读次数:282
30条   上一页 1 2 3
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!