0

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

我想知道是否有任何有效的方法来计算 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 次

谢谢。

4

2 回答 2

15

您忘记了您正在使用 PHP 进行编程。PHP 对一切都有一个功能。

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

于 2012-04-01T15:45:05.940 回答
0

一个 foreach 语句:

for($x=1; $x<=1000; $x++){
    $count=0;
    foreach($i as $y){
        if($y==$x){
            $count+=1;
        }
    }
    print($y . "=" . $count . "times");
}
于 2012-04-01T15:53:47.857 回答