首頁 >後端開發 >php教程 >php如何實現陣列重複數字統計(程式碼)

php如何實現陣列重複數字統計(程式碼)

不言
不言轉載
2018-09-30 13:43:332487瀏覽

這篇文章帶給大家的內容是關於php如何實現陣列重複數字統計(程式碼),有一定的參考價值,有需要的朋友可以參考一下,希望對你有幫助。

在一個長度為n的陣列裡的所有數字都在0到n-1的範圍內。數組中某些數字是重複的,但不知道有幾個數字是重複的。也不知道每個數字重複幾次。請找出數組中任一個重複的數字。例如,如果輸入長度為7的陣列{2,3,1,0,2,5,3},那麼對應的輸出就是第一個重複的數字2。
1.雜湊法
2.定義備用數組,作為雜湊使用,key是原始數組每個元素 value是出現的次數
3.遍歷雜湊數組

hash
for i=0i;<arr.length;i++
    hash[arr[i]]++;
foreach hash as v
    return v
<?php
function duplicate($numbers, &$duplication)
{
    
    
    // write code here
    //这里要特别注意~找到任意重复的一个值并赋值到duplication[0]
    //函数返回True/False
        $flag=false;
        $hash=array();
        for($i=0;$i<count($numbers);$i++){
                $hash[$numbers[$i]]++;//关键
        }       
        foreach($hash as $k=>$v){
                if($v>=2){
                        $flag=true;
                        $duplication[0]=$k;
                        break;
                }
        }

        return $flag;
}
$arr=[2,1,3,0,4];
$res=duplicate($arr,$duplication);
var_dump($res);
var_dump($duplication);

以上是php如何實現陣列重複數字統計(程式碼)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:cnblogs.com。如有侵權,請聯絡admin@php.cn刪除