「中位数java」中位数和平均数的区别

博主:adminadmin 2023-01-04 20:33:09 301

本篇文章给大家谈谈中位数java,以及中位数和平均数的区别对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

java如何计算中位数

就是先排序,然后确定数组长度

根据长度,确定数组下标,就可以

把数据取出来了。2个数据要求平均数

java 如何求多个数的中位数 具体!!!

package com.test;

import java.util.Arrays;

public class Test {

public static void main(String[] args) {

System.out.println(zhongweishu(7, 4, 8));

}

// 可换为多个数,如参数为:int a,int b,int c,int d,int e

public static int zhongweishu(int a, int b, int c){

int[] nums = {a,b,c};

Arrays.sort(nums); // 数组从小到大排序

return nums[nums.length/2]; // 找出排序后中间的数组值

}

}

JAVA怎么计算txt中一个1亿个浮点数的中位数?

你这个应该是面试题吧,平时不会让你做这样的问题

首先要了解一下什么是中位数,中位数就是数列中间的那个数,

如果一个集合是奇数个,那么中位数就是按大小排列后,最中间那个数,

如果一个集合是偶数个,那么中位数就是按大小排列后,最中间那2个数的平均数

那计算一个1亿个浮点数的中位数,说白了是要你排序,然后找到中间那两个数字的平均数

剩下就是排序的算法部分了,无规律的随机数字可以考虑快排算法

补充代码(快排)

那就用快排好了

package quickSort;

public class QuickSort {

private static int count;

/**

* 测试

* @param args

*/

public static void main(String[] args) {

int[] num = {3,45,78,64,52,11,64,55,99,11,18};

System.out.println(arrayToString(num,"未排序"));

QuickSort(num,0,num.length-1);

System.out.println(arrayToString(num,"排序"));

System.out.println("数组个数:"+num.length);

System.out.println("循环次数:"+count);

}

/**

* 快速排序

* @param num 排序的数组

* @param left 数组的前针

* @param right 数组后针

*/

private static void QuickSort(int[] num, int left, int right) {

//如果left等于right,即数组只有一个元素,直接返回

if(left=right) {

return;

}

//设置最左边的元素为基准值

int key=num[left];

//数组中比key小的放在左边,比key大的放在右边,key值下标为i

int i=left;

int j=right;

while(ij){

//j向左移,直到遇到比key小的值

while(num[j]=key ij){

j--;

}

//i向右移,直到遇到比key大的值

while(num[i]=key ij){

i++;

}

//i和j指向的元素交换

if(ij){

int temp=num[i];

num[i]=num[j];

num[j]=temp;

}

}

num[left]=num[i];

num[i]=key;

count++;

QuickSort(num,left,i-1);

QuickSort(num,i+1,right);

}

private static String arrayToString(int[] arr,String flag) {

String str = "数组为("+flag+"):";

for(int a : arr) {

str += a + "\t";

}return str;}}

中位数java的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于中位数和平均数的区别、中位数java的信息别忘了在本站进行查找喔。