PHP统计数值数组中出现频率最多的10个数字的方法

yipeiwu_com7年前PHP代码库

本文实例讲述了PHP统计数值数组中出现频率最多的10个数字的方法。分享给大家供大家参考。具体分析如下:

该问题属于TOPK范畴,统计单词出现频率,做报表,数据统计的时会常用!

php代码如下:

//随机生成数值数组
for($i=0;$i<1000;$i++){
  $ary[]=rand(1,1000);
}
//统计数组中所有的值出现的次数
$ary=array_count_values($ary);
arsort($ary);//倒序排序
$i=1;
foreach($ary as $key=>$value){
  if($i<=10){
    printf("数字:%d 共出现 %d 次<br/>",$key,$value); 
  }else{
    break;
  }
  $i++;
}
unset($ary);

结果如下:

数字:255 共出现 6 次
数字:443 共出现 5 次
数字:906 共出现 5 次
数字:623 共出现 5 次
数字:586 共出现 4 次
数字:660 共出现 4 次
数字:873 共出现 4 次
数字:208 共出现 4 次
数字:247 共出现 4 次
数字:240 共出现 4 次

希望本文所述对大家的php程序设计有所帮助。

相关文章

php开发微信支付获取用户地址

使用微信获取地址信息是和微信支付一道申请的,微信支付申请通过,就可以使用该功能。 微信商城中,使用微信支付获取用户的收货地址,可以省略用户输入地址信息的繁复流程,提高用户体验。 但是可能...

php以fastCGI的方式运行时文件系统权限问题及解决方法

php以fastCGI的方式运行时文件系统权限问题及解决方法

今天准备将一个php demo放在IIS下运行,网站在IIS下的配置是这样的: 应用程序池是集成模式下的.net framework 2.0(2.0或4.0没什么关系,因为php以fas...

探讨PHP函数ip2long转换IP时数值太大产生负数的解决方法

【造成原因】:Because PHP's integer type is signed, and many IP addresses will result in negative in...

PHP 优化配置——加速你的VBB,phpwind,Discuz,IPB,MolyX第1/2页

让论坛速度更快 PHP加速设置 PHP加速:Zend Optimizer优化PHP程序 Zend Optimizer V2.5.7&nb...

PHP实现的浏览器检查类

本文实例讲述了PHP实现的浏览器检查类。分享给大家供大家参考,具体如下: <?php //原作者:epsilon7 //SonyMusic([email]sonymus...