当前位置: 首页 > news >正文

php 数组元素 频率 次数

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

<?php
header("Content-type: text/html; charset=utf-8");
//==>  方法一;
// 统计数组中元素出现的频率
$a = array(5, 4, 8, 9, 3, 5, 4, 7, 9, 4, 7, 3, 2, 9, 8, 4, 7, 3, 2, 9, 4, 7);
// 使用官方
$cout = array_count_values($a);
// 用php实现
function marjority(array   $A)
{
    if (0 == count($A) || NULL == $A) {
        return false;
    }
    //  统计数组的大小.
    $N = count($A);
    // 初始化每个木桶的水量为1;
    $cout = [];
    $result = [];
    // 不好的地方在于,木桶的数量要依据数组中的最大值.浪费资源.
    for ($i = 0; $i < 101; $i++) {
        // 将木桶中的水量初始化.
        $cout[$i] = 0;
    }
    // 在木桶上标记容量.
    for ($i = 0; $i < $N; $i++) {
        // 如果重复出现,那么木桶中的水量会增加
        $cout[$A[$i]]++;
    }
    //过滤次数为0的.
    foreach ($cout as $k => $v) {
        if ($cout[$k] != 0) {
            $result[$k] = str_repeat("#", $v);
        }
    }
    return $result;
}
echo "使用PHP内置函数处理" . "<br />";
foreach ($cout as $k => $v) {
    echo $k . ":" . str_repeat('#', $v) . "<br />";
}
echo "<br />";
echo "使用木桶排序的方式处理" . "<br />";
$res = marjority($a);
foreach ($res as $k => $v) {
    echo $k . ":" . $v . "<br />";
}
?>

转载于:https://my.oschina.net/u/1579560/blog/536930

相关文章:

  • python docx文档转html页面
  • 算法60---石子游戏【动态规划】
  • (NO.00004)iOS实现打砖块游戏(九):游戏中小球与反弹棒的碰撞
  • Swift 设置navigation左右两侧按钮
  • JavaEE异常
  • jQuery根据元素值删除数组元素的方法
  • 简单的原生ajax
  • restful命名
  • android Lifecycle源码分析--源码阅读100天(1)
  • Java-TreeSet的用法-入门
  • (四)鸿鹄云架构一服务注册中心
  • 占位子,考完试写
  • golang学习笔记 ---命令行参数
  • 森林病虫防治系统 (结束)
  • Linux内核中进程上下文、中断上下文、原子上下文、用户上下文的理解【转】...
  • 2017年终总结、随想
  • Javascript Math对象和Date对象常用方法详解
  • JavaScript对象详解
  • js作用域和this的理解
  • Leetcode 27 Remove Element
  • miniui datagrid 的客户端分页解决方案 - CS结合
  • php面试题 汇集2
  • ubuntu 下nginx安装 并支持https协议
  • web标准化(下)
  • 分享一份非常强势的Android面试题
  • 开发基于以太坊智能合约的DApp
  • 力扣(LeetCode)965
  • 七牛云假注销小指南
  • 吐槽Javascript系列二:数组中的splice和slice方法
  • 新海诚画集[秒速5センチメートル:樱花抄·春]
  • $.ajax()参数及用法
  • (SpringBoot)第七章:SpringBoot日志文件
  • (二)fiber的基本认识
  • (附源码)springboot炼糖厂地磅全自动控制系统 毕业设计 341357
  • (转)负载均衡,回话保持,cookie
  • .NET Core MongoDB数据仓储和工作单元模式封装
  • .net framework 4.0中如何 输出 form 的name属性。
  • .Net Framework 4.x 程序到底运行在哪个 CLR 版本之上
  • .NET MVC、 WebAPI、 WebService【ws】、NVVM、WCF、Remoting
  • .net Signalr 使用笔记
  • .NET/C# 解压 Zip 文件时出现异常:System.IO.InvalidDataException: 找不到中央目录结尾记录。
  • /etc/fstab和/etc/mtab的区别
  • /proc/vmstat 详解
  • @javax.ws.rs Webservice注解
  • [ 隧道技术 ] 反弹shell的集中常见方式(四)python反弹shell
  • [20170728]oracle保留字.txt
  • [C语言]——分支和循环(4)
  • [Eclipse] 详细设置护眼背景色和字体颜色并导出
  • [hive] posexplode函数
  • [hive] 窗口函数 ROW_NUMBER()
  • [MSSQL]GROUPING SETS,ROLLUP,CUBE初体验
  • [Pyhton]weakref 弱引用
  • [Python]面向对象基础
  • [Quartz笔记]玩转定时调度
  • [RISC-V]verilog