给定一串数组,以换行符为结束标志,求这串数组的中位数,用java
时间: 2024-09-15 13:12:19 浏览: 40
python 实现在无序数组中找到中位数方法
5星 · 资源好评率100%
在Java中,要计算一串字符串数组的中位数,首先需要将字符串数组转换为整数数组,然后对数组进行排序,最后找到中间元素作为中位数。这里是一个简单的步骤示例:
```java
import java.util.Arrays;
public class MedianCalculator {
public static void main(String[] args) {
String[] strArray = {"1", "3", "2", "5", "4", "6"}; // 您的字符串数组
int[] numArray = convertStringsToInts(strArray);
Arrays.sort(numArray); // 对数组进行排序
int length = numArray.length;
if (length % 2 == 0) { // 如果数组长度偶数
double median = (numArray[length / 2] + numArray[length / 2 - 1]) / 2.0; // 中间两个数的平均值
System.out.println("中位数是: " + median);
} else { // 数组长度奇数
int medianIndex = length / 2;
System.out.println("中位数是: " + numArray[medianIndex]);
}
}
private static int[] convertStringsToInts(String[] arr) {
int[] numbers = new int[arr.length];
for (int i = 0; i < arr.length; i++) {
numbers[i] = Integer.parseInt(arr[i]); // 将字符串转换为整数
}
return numbers;
}
}
```
这个程序首先通过`convertStringsToInts`方法将字符串数组转换成整数数组,然后对数组排序。如果数组长度是偶数,取中间两个数的平均值;如果是奇数,直接取中间那个数。
阅读全文