计算PHP int数组重复次数的有效方法


Efficient way of counting repetitions on a PHP int array

可能重复:
如何计算数组中相同的值并将其存储到变量中?

我想知道是否有任何有效的方法来计算PHP int数组的重复次数。

在一个非常大的数组(100万个位置)中,数字从0到最大int大小。

我只想知道每个数字在数组上出现了多少次,但以最有效的方式出现。

例如:

$i[0] = 1
$i[1] = 1
$i[2] = 2
$i[3] = 2
$i[4] = 6
$i[5] = 1

1=的3倍

2=2倍

6=1次

谢谢。

您忘记了使用PHP编程。PHP有一个适用于一切的函数。

例如,对于您的特定问题,您只需使用array_count_values:)

foreach语句:

for($x=1; $x<=1000; $x++){
    $count=0;
    foreach($i as $y){
        if($y==$x){
            $count+=1;
        }
    }
    print($y . "=" . $count . "times");
}