美文网首页
ELFhash——字符串Hash函数

ELFhash——字符串Hash函数

作者: 猛火Fierflame | 来源:发表于2018-02-02 00:23 被阅读0次
int ELFhash ( char *key ) {
    unsigned long h=0;
    unsigned long x=0;
    while (*key ) {
        //h左移4位,当前字符ASCII存入h的低四位
        h = ( h << 4 ) + ( *key++ );
        if ( ( x = h & 0xF0000000L) != 0 ) {
            //如果最高位不为0,则说明字符多余7个,如果不处理,再加第九个字符时,第一个字符会被移出,因此要有如下处理
            h ^= ( x >> 24 );
            //清空28~31位
            h &= ~x;
        }
    }
    return h % N;
}

相关文章

  • ELFhash——字符串Hash函数

  • Python 用于密码加密的 hash()函数

    Python hash() 函数 功能描述hash() 用于获取取一个对象(字符串或者数值等)的哈希值。 引用段落...

  • 加密算法之Hash函数与消息验证码

    Hash函数 Hash函数计算的是一个消息的摘要,并且这个摘要是一个非常短、长度固定的位字符串。对某个特定的消息而...

  • Golang标准库——hash

    hash hash包提供hash函数的接口。 type Hash Hash是一个被所有hash函数实现的公共接口。...

  • PHP全栈学习笔记22

    定义和用法sha1() 函数计算字符串的 SHA-1 散列。sha1() 函数使用美国 Secure Hash 算...

  • PHP全栈学习笔记22

    定义和用法sha1() 函数计算字符串的 SHA-1 散列。sha1() 函数使用美国 Secure Hash 算...

  • Redis的存储结构笔记

    hash:给定一个字符串或者其他任意的值X,通过hash函数得到一个散列值;hash表的意思就是建立一个数组, 问...

  • 哈希算法

    哈希算法 什么是hash函数?常见的hash算法hashlib的用法hash算法的用途 什么是hash函数? 哈希...

  • 什么是hash函数?

    Hash函数就是,不管你输入什么:数字、文字、图像、视频;而输出只能是一个字符串。

  • 字符串---hash

    字符串hash 一个hash方法,BKDRHash。选定一个seed,然后求一个字符串的hash值for(int ...

网友评论

      本文标题:ELFhash——字符串Hash函数

      本文链接:https://www.haomeiwen.com/subject/dwxszxtx.html