最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

PHP實現(xiàn)統(tǒng)計一個數字在排序數組中出現(xiàn)次數的方法

 更新時間:2018年01月12日 11:19:45   作者:重口味AC  
這篇文章主要介紹了PHP實現(xiàn)統(tǒng)計一個數字在排序數組中出現(xiàn)次數的方法,涉及php基于二分查找算法在數組中進行查找及統(tǒng)計的相關操作技巧,需要的朋友可以參考下

本文實例講述了PHP實現(xiàn)統(tǒng)計一個數字在排序數組中出現(xiàn)次數的方法。分享給大家供大家參考,具體如下:

題目

統(tǒng)計一個數字在排序數組中出現(xiàn)的次數。

題解

既然是排序數組,使用二分查找是效率最高的。找到之后再向兩側拓展一下。

代碼

<?php
function GetNumberOfK($data, $k)
{
  if(count($data)==0){
    return 0;
  }
  $index = 0;
  $low = 0;
  $high = count($data)-1;
  $middle = 0;
  //二分查找找到k的index
  while($low<=$high){
    $middle = ($high+$low)>>1;
    if($data[$middle]==$k){
      $index = $middle;
      break;
    }
    else if($data[$middle]>$k) {
      $high = $middle -1;
    }else{
      $low = $middle+1;
    }
    $index = -1;
  }
  // console.log(index);
  // 如果沒找到
  if($index==-1){
    return 0;
  }
  //找到了 分別往左右查找邊界
  $start = $index;
  $end = $index;
  $count = 0;
  while($data[$start]==$k){
    $count++;
    $start--;
  }
  while($data[$end]==$k){
    $count++;
    $end++;
  }
  return $count-1;
}

PS:這里再為大家推薦2款功能類似的統(tǒng)計工具(JS實現(xiàn))供大家參考使用:

在線字數統(tǒng)計工具:
http://tools.jb51.net/code/zishutongji

在線字符統(tǒng)計與編輯工具:
http://tools.jb51.net/code/char_tongji

更多關于PHP相關內容感興趣的讀者可查看本站專題:《PHP數據結構與算法教程》、《PHP數組(Array)操作技巧大全》、《php字符串(string)用法總結》及《php程序設計算法總結

希望本文所述對大家PHP程序設計有所幫助。

相關文章

  • PHP采集相關教程之一 CURL函數庫

    PHP采集相關教程之一 CURL函數庫

    目前為目最全的CURL中文說明了,學PHP的要好好掌握。有很多的參數。大部份都很有用。真正掌握了它和正則,一定就是個采集高手了。
    2010-02-02
  • php比較兩個字符串長度的方法

    php比較兩個字符串長度的方法

    這篇文章主要介紹了php比較兩個字符串長度的方法,涉及php中strlen與abs函數計算字符串與數學運算的相關技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-07-07
  • php高性能日志系統(tǒng) seaslog 的安裝與使用方法分析

    php高性能日志系統(tǒng) seaslog 的安裝與使用方法分析

    這篇文章主要介紹了php高性能日志系統(tǒng) seaslog 的安裝與使用方法,結合實例形式分析了php日志系統(tǒng) seaslog 的安裝、配置、使用方法及相關注意事項,需要的朋友可以參考下
    2020-02-02
  • PHP $_FILES中error返回值詳解

    PHP $_FILES中error返回值詳解

    用PHP上傳文件時,我們會用程序去監(jiān)聽瀏覽器發(fā)送過來的文件信息,首先會通 過$_FILES[fieldName]['error']的不同數值來判斷此欲上傳的文件狀態(tài)是否正常。$_FILES[fieldName] ['error']==0代表一切正常,其它數值的具體含義請參考下面一段程序的注釋部分,如有翻譯不到之處還望指正
    2014-01-01
  • php編寫的抽獎程序中獎概率算法

    php編寫的抽獎程序中獎概率算法

    本文給大家分享的是php中獎概率算法,可用于刮刮卡,大轉盤等抽獎算法。用法很簡單,代碼里有詳細注釋說明,一看就懂,有需要的小伙伴參考下吧。
    2015-05-05
  • php中執(zhí)行系統(tǒng)命令的方法

    php中執(zhí)行系統(tǒng)命令的方法

    這篇文章主要介紹了php中執(zhí)行系統(tǒng)命令的方法,涉及escapeshellcmd及exec方法的使用技巧,需要的朋友可以參考下
    2015-03-03
  • PHP在終端中實現(xiàn)進度條來處理數據的示例詳解

    PHP在終端中實現(xiàn)進度條來處理數據的示例詳解

    在PHP中,有時候你需要在終端中處理大量數據或執(zhí)行長時間運行的任務,同時希望能夠實時跟蹤任務的進度,在 PHP 中,有時候你需要在終端中處理大量數據或執(zhí)行長時間運行的任務,同時希望能夠實時跟蹤任務的進度,需要的朋友可以參考下
    2023-10-10
  • Docker 安裝 PHP并與Nginx的部署實例講解

    Docker 安裝 PHP并與Nginx的部署實例講解

    這篇文章主要介紹了Docker 安裝 PHP并與Nginx的部署實例講解,文中圖文操作步驟講解的很清楚,有感興趣的同學可以研究下
    2021-02-02
  • 設置php頁面編碼的兩種方法示例介紹

    設置php頁面編碼的兩種方法示例介紹

    這篇文章主要介紹了兩種設置php頁面編碼的方法,并附有示例,大家可以練習下
    2014-03-03
  • PHP面向對象程序設計之接口的繼承定義與用法詳解

    PHP面向對象程序設計之接口的繼承定義與用法詳解

    這篇文章主要介紹了PHP面向對象程序設計之接口的繼承定義與用法,結合實例形式分析了php接口的概念、定義、使用方法及相關操作注意事項,需要的朋友可以參考下
    2018-12-12

最新評論

灵寿县| 东港市| 九寨沟县| 辽宁省| 通辽市| 咸丰县| 鹿泉市| 潜山县| 开原市| 揭东县| 武陟县| 峨眉山市| 昭苏县| 惠来县| 新津县| 江阴市| 商丘市| 扎鲁特旗| 静安区| 盐津县| 卫辉市| 东阿县| 澄城县| 安阳市| 开远市| 苍南县| 内丘县| 凤山县| 绿春县| 凌云县| 若尔盖县| 克什克腾旗| 武邑县| 饶河县| 抚松县| 镇坪县| 定西市| 阜新市| 故城县| 吴桥县| 绥滨县|