PHP如何实现找出数组中出现次数超过数组长度一半的数字算法-创新互联

这篇文章主要介绍PHP如何实现找出数组中出现次数超过数组长度一半的数字算法,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

成都创新互联公司一直秉承“诚信做人,踏实做事”的原则,不欺瞒客户,是我们最起码的底线! 以服务为基础,以质量求生存,以技术求发展,成交一个客户多一个朋友!为您提供成都网站制作、成都做网站、成都网页设计、微信小程序、成都网站开发、成都网站制作、成都软件开发、成都APP应用开发是成都本地专业的网站建设和网站设计公司,等你一起来见证!

具体如下:

2),表示,数字1出现
* 了2次。
*
* 下面的代码给出了具体实现过程。
*/
$array=array(1,1,3,1,1,14,1,1,4,6,7,1,1,21,33);
//创建原数组
$temp=$array;
//得到原数组的一个拷贝
$result=array();
//初始化计数器数组
foreach ($array as $value)//循环原数组
{
  if(in_array($value,$temp))//判断数字是否存在于拷贝数组中
  {
    if(isset($result[$value]))//判断该数字是否已经被计数过
    {
      $result[$value]=$result[$value]+1;
      //如果已经出现过,计数器自增
    } else
    {
      $result[$value]=1;
      //如果没有,计数器初始化1
    }
  }
}
$len=count($array);
//计算数组长度
foreach ($result as $key=>$value)//循环计数器数组,这里的$key表示数字,$value表示出现次数
{
  if($value>($len/2))//如果一个数字的出现次数超过了数组长度的一半
  {
    echo '数组中共有元素'.$len.'个
';     echo $key.'出现了'.$value.'次,超过了数组长度的一半'.($len/2);     break;     //数组中只可能有一个数字的出现次数超过数组长度的一半   } } ?>

运行结果:

数组中共有元素15个
1出现了8次,超过了数组长度的一半7.5

以上是“PHP如何实现找出数组中出现次数超过数组长度一半的数字算法”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注创新互联行业资讯频道!


名称栏目:PHP如何实现找出数组中出现次数超过数组长度一半的数字算法-创新互联
标题来源:http://hbruida.cn/article/icsch.html