• <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)

            搜索

            最新評論

            閱讀排行榜

            評論排行榜

            久久久久久狠狠丁香| 久久久久国产精品熟女影院 | 欧美与黑人午夜性猛交久久久| 欧美777精品久久久久网| 久久精品国产色蜜蜜麻豆| 亚洲另类欧美综合久久图片区| 77777亚洲午夜久久多喷| 国产精品免费久久久久久久久| 天天综合久久一二三区| 亚洲国产另类久久久精品小说 | 97精品伊人久久大香线蕉app| 国产精品免费久久久久电影网| 伊人久久大香线蕉av不变影院 | 97久久精品人妻人人搡人人玩| 久久国产成人| 99久久精品毛片免费播放| 国产视频久久| 69久久夜色精品国产69| 久久香综合精品久久伊人| 丁香五月综合久久激情| 久久天天躁狠狠躁夜夜96流白浆| 理论片午午伦夜理片久久 | 久久久久免费看成人影片| 欧美久久一区二区三区| 久久99精品久久久久久| 亚洲成色WWW久久网站| 伊人久久国产免费观看视频| 精品久久人人妻人人做精品| 国产精品九九九久久九九| 国产成人无码精品久久久性色| 香蕉99久久国产综合精品宅男自| 国产精品伦理久久久久久| 国产精品久久精品| 国产成人久久激情91 | 精品久久久久久久中文字幕| 久久综合狠狠综合久久激情 | 999久久久无码国产精品| 久久天天躁狠狠躁夜夜躁2O2O| 日韩乱码人妻无码中文字幕久久| 亚洲色大成网站WWW久久九九| 久久精品国产精品亚洲精品 |