2、其次如果识别成功,会提示文件名。
3、最后如果不符合上面检测的结果,那就不是同一个文件的哈希值。
Hash 可以看作是一个 关联数组,它对每一个值都绑定了一个唯一的键(值并不必须是唯一的), 然而,它不能保证迭代时元素的顺序始终一致。因为 JavaScript 程序语言的特性,每个对象实际上都是一个 hash,下面我们就来详细探讨下。性能很高的计算字符串或文件hash值的函数,比md5速度快得多,自己一直用着,重复的几率为很底,一般的应用足够,
var I64BIT_TABLE =
'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_-'.split('')
function hash(input){
var hash = 5381
var i = input.length - 1
if(typeof input == 'string'){
for (i >-1i--)
hash += (hash <<5) + input.charCodeAt(i)
}
else{
for (i >-1i--)
hash += (hash <<5) + input[i]
}
var value = hash &0x7FFFFFFF
var retValue = ''
do{
retValue += I64BIT_TABLE[value &0x3F]
}
while(value >>= 6)
return retValue
}
#include<stdio.h>int main(){
char s[256]
char *p
unsigned long long int h = 0
scanf("%s", s)
for(p=s *p p++){
h = h*31 + *p
}
printf("%llu", h)
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)