JAVA求数组的平均数,众数,中位数[通俗易懂]

JAVA求数组的平均数,众数,中位数[通俗易懂]目录1、名称解释2、实例代码(1)求平均数(2)求中位数(3)求众数1、名称解释平均数:是指一组数据之和,除以这组数的个数,所得的结果就是平均数。中位数:中位数是指把一组数据从小到大排列,如果这组数据的个数是奇数,那最中间那个就是中位数,如果这组数据的个数为偶数,那就把中间的两个数之和除以2,所得的结果就是中位数。众数:众数是指一组数据中出现次数最多的那个数,众数可以是0个或多个。2、实例代码(1)求平均数publicstaticdoublem..

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

目录

1、名称解释

2、实例代码 

(1)求平均数

(2)求中位数

(3)求众数


1、名称解释

平均数:是指一组数据之和,除以这组数的个数,所得的结果就是平均数。

中位数:中位数是指把一组数据从小到大排列,如果这组数据的个数是奇数,那最中间那个就是中位数,如果这组数据的个数为偶数,那就把中间的两个数之和除以2,所得的结果就是中位数。

众数:众数是指一组数据中出现次数最多的那个数,众数可以是0个或多个。

2、实例代码 

(1)求平均数

public static double mean(int[] arr) {
		int sum = 0;
		for (int i = 0; i < arr.length; i++) {
			sum += arr[i];
		}
		return (double) sum / arr.length;
	}

(2)求中位数

public static double median(int[] arr) {
		// 先排序
		Arrays.sort(arr);
		// 如果是偶数,则为中间两个数的和除以2
		if (arr.length % 2 == 0) {
			return (double) ((arr[arr.length / 2 - 1] + arr[arr.length / 2])) / 2;
		}
		// 否则就是中间这个数
		return arr[arr.length / 2];
	}

(3)求众数

public static List<Integer> mode(int[] arr) {
		Map<Integer, Integer> map = new HashMap<>();
		Set<Map.Entry<Integer, Integer>> set = map.entrySet();
		List<Integer> list = new ArrayList<>();
		// 结果
		List<Integer> res = new ArrayList<>();
		// 统计元素出现的次数,存入Map集合
		for (int item : arr) {
			map.put(item, map.getOrDefault(item, 0) + 1);
		}
		// 将出现的次数存入List集合
		map.forEach((k, v) -> {
			list.add(v);
		});
		//集合排序
		Collections.sort(list);
		// 得到最大值
		int max = list.get(list.size() - 1);
		// 根据最大值获取众数
		for (Map.Entry<Integer, Integer> entry : set) {
			if (entry.getValue() == max) {
				res.add(entry.getKey());
			}
		}
		return res;
	}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/192555.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • nginx基本配置「建议收藏」

    nginx基本配置「建议收藏」Nginx概念Nginx是一个高性能的HTTP和反向代理服务。其特点是占有内存少,并发能力强,事实上nginx的并发能力在同类型的网页服务器中表现较好。Nginx专为性能优化而开发,性能是

    2022年7月1日
    25
  • 怎么安装pycharm及环境变量配置_JRE环境配置

    怎么安装pycharm及环境变量配置_JRE环境配置pycharm安装以及其环境的配置说明此次我们使用win10系统安装pycharm的64位社区版,并且对Anaconda3中自带的Python3进行环境的配置,如果您没有Anaconda3甚至是没有Python3环境,可以参考Anaconda3安装教程及说明,如果您的pip源未更改,这里推荐您改为使用国内的pip源,这样可以更快的下载组件,方法见修改pip源至国内镜像网站。教程从开始菜单中找到你的AnacondaPrompt并打开…

    2022年8月25日
    9
  • java销售管理系统_图书销售管理系统Java源代码

    java销售管理系统_图书销售管理系统Java源代码【实例简介】图书销售管理系统,内含源代码,项目需求分析,编写思路【实例截图】【核心代码】BookSaleManagementSystem└──BookSaleManagementSystem├──bin│├──com││└──pb││├──authority│││├──impl││││├──…

    2022年6月14日
    30
  • docker 常用命令大全

    docker 常用命令大全Docker常用命令大全

    2022年5月13日
    51
  • axios上传文件以及遇到的问题

    axios上传文件以及遇到的问题axios上传文件以及遇到的问题1,这里上传文件使用的是elementUI的上传,也用原生的input上传写了,但是没有时间做多文件上传,下面会把代码贴出。2,这里上传文件我是先获取OSS权限和上传路径,然后再上传。但是权限获取成功后,上传到阿里云服务器时,OPTION请求报403。原因是项目中axios设置了拦截器,添加了config配置,但是在axios发送OPTION测试接口是否有权限访…

    2022年6月17日
    331
  • Flyway入门_flyrouter

    Flyway入门_flyrouter1.为什么要用flyway?在真实的项目开发中,我们每个人都会有一个应用软件和与其相联系的数据库。对于个人开发来说,这样就够了。但是,项目开发一般都不止一个人,因此一定会出现我在我的本地有一套软件和相应的数据库系统,我的另一个同事会在他的本地有一套他自己的软件和相应的数据库系统。我们需要面临的第一个问题就是我们两个人如何集成我们的数据库系统,之后还要处理如何将数据库系统迁移到测试环境和生产环境当…

    2025年7月26日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号