部分转载自here
常用HASH算法 代码 & 比较
常用的字符串Hash函数还有ELFHash,APHash等等,都是十分简单有效的方法。这些函数使用位运算使得每一个字符都对最后的函数值产生影响。另外还有以MD5和SHA1为代表的杂凑函数,这些函数几乎不可能找到碰撞。
常用字符串哈希函数有BKDRHash,APHash,DJBHash,JSHash,RSHash,SDBMHas...
分类:
其他好文 时间:
2016-05-13 02:45:56
阅读次数:
195
布隆过滤器(Bloom Filter): 是由布隆(Burton
Howard Bloom)提出的。它实际上是由一个很长的二进制向量和一系列随机映射函数组成,布隆过滤器用于检索一个元素是否在一个集合中。底层是利用哈希表来实现的,它可以通过一个Hash函数将一个元素映射成一个位阵列(Bit
Array)中的一个点。这样一来,我们只要看看这个点是不是 1 就知道可以集合中有没有它了。这就是...
分类:
其他好文 时间:
2016-05-12 23:53:08
阅读次数:
278
今天打算使用redis 的bitset搞一个 bloom filter, 这样的好处是可以节省内存,坏处是可能在会有一些数据因为提示重复而无法保存。 bloom filter 的大体原理就是通过不同的hash函数将一个字符串映射到几个不同的位,并将这几个不同的位设置为1. 如果在查找某个字符串的时候 ...
分类:
其他好文 时间:
2016-05-11 23:53:22
阅读次数:
358
1.直接定址法、数字分析法、平方取中法 、折叠法、随机数法、除留余数法;
2.冲突解决:开放定址法(线性探测、二次探测和随机探测)、链地址发、再哈希发、建立溢出区...
分类:
其他好文 时间:
2016-05-10 18:50:48
阅读次数:
122
20145306 第五次 java 实验报告 实验内容 客户端与服务器连接,客户端中输入明文,利用DES算法加密,DES的秘钥用RSA公钥密码中服务器的公钥加密,计算明文的Hash函数值,一起传送给客户端,客户端用RSA公钥密码中服务器的私钥解密DES的,秘钥,用秘钥对密文进行解密,得出明文。计算求 ...
分类:
编程语言 时间:
2016-05-08 19:33:35
阅读次数:
196
重载hash与isEqual:方法 前言 NSObject 自带了hash与isEqual:方法,服务于具有hash表结构的数据结构。NSObject自带的hash函数相当于hash表中的f(key)函数中的key,这“唯一”的key需要用户自己产生,至于用什么算法由用户自己决定。 准备 测试 1. ...
分类:
其他好文 时间:
2016-04-16 10:47:31
阅读次数:
181
前言 : 即可能误判 不会漏判 一、什么是Bloom Filter Bloom Filter是一种空间效率很高的随机数据结构,它的原理是,当一个元素被加入集合时,通过K个Hash函数将这个元素映射成一个位阵列(Bit array)中的K个点,把它们置为1。检索时,我们只要看看这些点是不是都是1就(大 ...
分类:
其他好文 时间:
2016-04-11 18:20:35
阅读次数:
179
好的HASH函数需要把原始数据均匀地分布到HASH数组里 原始数据不大会是真正的随机的,可能有某些规律, 比如大部分是偶数,这时候如果HASH数组容量是偶数,容易使原始数据HASH后不会均匀分布。比如 2 4 6 8 10 12这6个数,如果对 6 取余 得到 2 4 0 2 4 0 只会得到3种H ...
分类:
其他好文 时间:
2016-04-02 18:50:53
阅读次数:
202
1.数的哈希一般是讲较大的数转化为一定范围内的数,如112131321321 转化为100000以内,一般用%99991;就是自己构造hash函数,然后函数值在100000以内; 2.当出现相同的key值,即函数值时,要用链表串起; 3.例:poj 3349; #include<iostream># ...
分类:
其他好文 时间:
2016-04-01 22:07:55
阅读次数:
243
列表内容
Hash表中的一些原理/概念,及根据这些原理/概念,自己设计一个用来存放/查找数据的Hash表,并且与JDK中的HashMap类进行比较。
我们分一下七个步骤来进行。
Hash表概念
在Hash表中,记录在表中的位置和其关键字之间存在着一种确定的关系。这样 我们就能预先知道所查关键字在表中的位置,从而直接通过下标找到记录。
1) 哈希(Hash)函数是一个映象,即: 将关键字的...
分类:
其他好文 时间:
2016-03-26 07:14:44
阅读次数:
202