JAVA求数组的平均数,众数,中位数[通俗易懂]
2023-06-13 09:13:38 时间
大家好,又见面了,我是你们的朋友全栈君。
目录
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.cn/192555.html原文链接:https://javaforall.cn
相关文章
- java中数组转列表_Java数组转list
- java打印数组元素_java Arrays快速打印数组的数据元素列表案例
- Java连接MySQL mysql-connector-java-bin.jar驱动包的下载与安装
- Java中数组的声明格式
- java数组的声明_Java数组定义常用方法[通俗易懂]
- 菜鸟教程java_JAVA笔记(菜鸟教程)[通俗易懂]
- java开发常用四大框架_大牛经验!常用的5款Java框架汇总[通俗易懂]
- java中文乱码_Java中文乱码问题的解决方案[通俗易懂]
- java代码大全及详解_Java练级攻略[通俗易懂]
- java数组去重_JAVA数组去重常用方法
- java控制台输入数组_Java控制台输入数组并逆序输出的方法实例
- java uuid 随机数_Java随机数和UUID[通俗易懂]
- java的遍历数组效率测试源码[通俗易懂]
- java中输出数组元素的方法[通俗易懂]
- java 常量表达式,需要常量表达式? (Java switch语句)[通俗易懂]
- Java的学习笔记(05)数组
- Java 数组转 List 的三种方式及对比
- java学习笔记04–数组详解编程语言
- 使用Java轻松导出MySQL数据(java导出mysql)
- MSSQL与Java的数据库连接实践(mssql连接java)
- Oracle全面支持Java链技术构建数据库应用(java链oracle)
- Java中实现双数组Trie树实例