1
public static double calcMedian(int[] array) {
int n = array.length;
int middle = n/2;
double median=0;
for (int i = 0; i < n; i++) {
if ((n % 2) == 1) {
median = array[middle];
} else if((n % 2) == 0){
median = (array[middle-1] + array[middle])/2;
}
}
return median;
}
當我有一個奇數的元素,我沒有得到正確的中位數。例如,如果我的數組是[1 3 6 7 10 12],那麼中位數應該是6.5。我得到的是6.我不明白爲什麼。由於事先Java中位數。當我有一個數字對的數組,我得到的中位數不正確