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;
}
When I have an odd numbers of element I don't get the right median. For instance, if my array is [1 3 6 7 10 12], the median should be 6.5. What I get is 6. I can't understand why. Thanks in advance