• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            c++&oi

            字符串 Hash 函數(shù)

            發(fā)現(xiàn)字符串 Hash 函數(shù)不會寫,學習一下。
            網(wǎng)上有一個好的文章《各種字符串 Hash 函數(shù)比較》
            最常見的幾個:
            // BKDR Hash Function
            unsigned int BKDRHash(char *str)
            {
            unsigned int seed = 131; // 31 131 1313 13131 131313 etc..
            unsigned int hash = 0;
            while (*str)
            {
            hash = hash * seed + (*str++);
            }
            return (hash & 0x7FFFFFFF);
            }

            // AP Hash Function
            unsigned int APHash(char *str)
            {
            unsigned int hash = 0;
            int i;
            for (i=0; *str; i++)
            {
            if ((i & 1) == 0)
            {
            hash ^= ((hash << 7) ^ (*str++) ^ (hash >> 3));
            }
            else
            {
            hash ^= (~((hash << 11) ^ (*str++) ^ (hash >> 5)));
            }
            }
            return (hash & 0x7FFFFFFF);
            }

            //SDBMHash
            unsigned int SDBMHash(char *str)
            {
            unsigned int hash = 0;
            while (*str)
            {
            // equivalent to: hash = 65599*hash + (*str++);
            hash = (*str++) + (hash << 6) + (hash << 16) - hash;
            }
            return (hash & 0x7FFFFFFF);
            }

            // RS Hash Function
            unsigned int RSHash(char *str)
            {
            unsigned int b = 378551;
            unsigned int a = 63689;
            unsigned int hash = 0;
            while (*str)
            {
            hash = hash * a + (*str++);
            a *= b;
            }
            return (hash & 0x7FFFFFFF);
            }
            學會了7FFF FFF F =2^31-1 !!!!!
            其它的正在學習中。

            posted on 2011-12-04 19:17 zyn.cpp 閱讀(293) 評論(0)  編輯 收藏 引用

            <2025年7月>
            293012345
            6789101112
            13141516171819
            20212223242526
            272829303112
            3456789

            導航

            統(tǒng)計

            常用鏈接

            留言簿

            隨筆檔案(57)

            文章檔案(13)

            搜索

            最新評論

            閱讀排行榜

            評論排行榜

            久久www免费人成看片| 久久精品女人天堂AV麻| 久久精品国产清高在天天线| 色妞色综合久久夜夜| 99久久99久久精品国产| 色欲综合久久躁天天躁| 久久精品aⅴ无码中文字字幕不卡 久久精品aⅴ无码中文字字幕重口 | 99久久国产热无码精品免费| 国产美女久久久| 久久久久久久国产免费看| 中文字幕日本人妻久久久免费| 97久久国产亚洲精品超碰热| 久久精品无码一区二区三区日韩| 亚洲午夜福利精品久久| 久久99国产亚洲高清观看首页 | 久久久噜噜噜久久| 婷婷伊人久久大香线蕉AV| 91精品国产91久久久久久青草| 久久精品国产亚洲av麻豆图片| 国产精品99久久久久久宅男| 日韩人妻无码精品久久久不卡| 性高湖久久久久久久久AAAAA| 久久青草国产精品一区| 久久国产精品无码HDAV| 区久久AAA片69亚洲| 手机看片久久高清国产日韩| www亚洲欲色成人久久精品| 97久久精品国产精品青草| 色8久久人人97超碰香蕉987| 久久中文字幕人妻丝袜| 欧美久久久久久午夜精品| 国产精品久久久久久久久久免费| 久久精品中文闷骚内射| 色欲综合久久中文字幕网| 久久综合亚洲色一区二区三区| 亚洲AⅤ优女AV综合久久久| 久久无码国产| 亚洲性久久久影院| 日日噜噜夜夜狠狠久久丁香五月 | 久久综合九色综合久99| 大美女久久久久久j久久|