如何对大数据进行HASH算法,也就是如何分段HASH

来源:百度知道 编辑:UC知道 时间:2024/06/19 00:35:53
如何对大数据进行HASH算法,也就是如何分段HASH,
请给出代码,谢谢!
--------------------------------
请给出代码啊,谢谢,HASH过后只有hash句柄,难道每次都用CryptGetHashParam把hash值取出来存起来?最后连一起?

hash,中文翻译成杂乱的东西,有人也叫它杂凑,或者翻译成什么都不是的音译“哈希”。

简单说来,hash就是为了把一个复杂的字串,通过一定的转换,得到一个简单的数字(通常是数字)。
如"abcd" 用各个字符的值直接相加,再取对10的余数,既(a+b+c+d)%10,来得到一个数字,比方说结果为5,那么这个5就能在一定意义上代表这个字串 abcd了。或者说这个5也可以说是这个字串的一个标记性的东西,而且是简化了的标记,所以又有人叫这个5为字串的摘要,或指纹。
这个5,有一个好的用处就是可以作为一个数组的下标来用,如我自己构造一个指针数组void* hash_array[10],那么我就可以把5那个位置上填上一个指针,如指向abcd字串。
这样的话,我如果要去查询一个字串是否存在,就不需要对一个数组使用字符串循环对比这样的慢操作,而直接先得到某个字串的hash值,再用这个hash值,在数组下标里直接找,这样速度要快上很多,特别是数据比较多的时候。

可以用MD5算法,把每块的MD5加起来!