中文字幕在线一区二区在线,久久久精品免费观看国产,无码日日模日日碰夜夜爽,天堂av在线最新版在线,日韩美精品无码一本二本三本,麻豆精品三级国产国语,精品无码AⅤ片,国产区在线观看视频

      介紹PHP Hash算法

      時間:2024-10-21 22:26:03 PHP 我要投稿
      • 相關推薦

      介紹PHP Hash算法

        這篇文章主要介紹了PHP Hash算法:Times33算法代碼實例,本文直接給出實現代碼,需要的朋友可以參考下

        最近看書,里面提到了一些Hash算法。比較有印象的是Times33,當時理解不是很透測,今天寫了段程序來驗證了一下。

        先上代碼:

        復制代碼 代碼如下:

        /**

        * CRC32 Hash function

        * @param $str

        * @return int

        */

        function hash32($str)

        {

        return crc32($str) >> 16 & 0x7FFFFFFF;

        }

        /**

        * Times33 Hash function

        * @param $str

        * @return int

        */

        function hash33($str)

        {

        $hash = 0;

        for($i=0; $i

        $hash += 33 * $hash + ord($str{$i});

        }

        return $hash & 0x7FFFFFFF;

        }

        $n = 10;

        // Test Case 1

        $stat = array();

        for($i=0; $i<10000; $i++){

        $str = substr(md5(microtime(true)), 0, 8);

        $p = hash32($str) % $n;

        if(isset($stat[$p])){

        $stat[$p]++;

        }else{

        $stat[$p] = 1;

        }

        }

        print_r($stat);

        // Test Case 2

        $stat = array();

        for($i=0; $i<10000; $i++){

        $str = substr(md5(microtime(true)), 0, 8);

        $p = hash33($str) % $n;

        if(isset($stat[$p])){

        $stat[$p]++;

        }else{

        $stat[$p] = 1;

        }

        }

        print_r($stat);

        以上有兩個測試用例。第一個,用CRC32的方法;第二個是Times33的算法實現。

        效果:

        結果分布,兩種算法不相上下(估計是數據源的問題,md5只有0-f)。也有文章說CRC32的分布更均勻(參考鏈接:)

        但耗費時間,CRC32比Times33快將近一倍。

        為什么是33?

        即是素數(質數),也是奇數。除了33,還有131, 1313, 5381等。PHP內置的Hash函數用的是5381,在“鳥哥”的一篇博文中也有提到。

      【介紹PHP Hash算法】相關文章:

      簡單介紹php構造函數用法08-31

      精選php面試自我介紹范文14篇08-29

      Smarty (PHP模板引擎)知識點介紹06-12

      關于php面試寶典及PHP面試技巧08-16

      簡單分析PHP中序列化用法介紹08-15

      PHP的壓縮函數06-21

      php高級教程01-23

      如何學好PHP知識09-20

       PHP的基礎編程與應用10-16

      淺析php函數的實例06-08

      主站蜘蛛池模板: 尚义县| 99RE6在线观看国产精品 | 韩日无码不卡| 台东县| 国产精品亚洲专区无码不卡| a级国产精品片在线观看| 国产午夜人成视频在线观看| 人妻少妇中文字幕久久69堂| 宁波市| 桦川县| 绥棱县| 大港区| 精品中文字幕日本久久久| 常宁市| 乌兰浩特市| 延庆县| 国产麻豆精品久久一二三| 永修县| 亚洲国产一区二区在线| 柘城县| 安阳县| 盱眙县| 久久青草国产免费观看| 美女被射视频在线观看91| 亚洲高清有码在线观看| 卢龙县| 午夜日韩成年人视频在线观看| 97精品国产高清自在线看超| 丰城市| 日韩精品一区二区三区中文| 香蕉亚洲欧洲在线一区| 国产美女久久久亚洲综合| 少妇久久久被弄到高潮| 乱淫av一区二区三区| 成人综合亚洲国产成人| 一区二区视频观看在线| 天堂av在线一区二区| 人妻有码中文字幕在线不卡| 久久亚洲精品成人AV无码网址| 日本牲交精品一区二区三区| 国产国拍亚洲精品永久69|