Нахождение медианного значения случайного массива

Возможный дубликат:
Поиск медианного значения массив?
Как рассчитать среднее значение, медиану, режим и диапазон из набора чисел
Объединение алгоритмов быстрой сортировки и медианного выбора

Как я могу найти медианные значения случайно сгенерированного массива?

Например: это даст мне массив вроде 88,23,93,65,22,43. Код, который я использую, находит среднее число, но не сортируется.

Вот код, который я использую до сих пор:

double Median()
{
    int Middle = TheArrayAssingment.length / 2;
       if (TheArrayAssingment.length%2 == 1)
        {
           return TheArrayAssingment[Middle];
        }
    else {
        return (TheArrayAssingment[Middle-1] + TheArrayAssingment[Middle]) / 2.0;
    }
}

person user1510747    schedule 21.07.2012    source источник
comment
Не забудьте опубликовать свой код.   -  person Reimeus    schedule 22.07.2012
comment
почему бы тогда просто не отсортировать массив?   -  person Jon Taylor    schedule 22.07.2012
comment
Что вы пробовали?   -  person tiwo    schedule 22.07.2012
comment
Этот вопрос был задан до   -  person Óscar López    schedule 22.07.2012
comment
Дублировать Поиск медианного значения массива?   -  person tenorsax    schedule 22.07.2012
comment
Если вам нужно самое быстрое асимптотическое поведение, вам подойдет медиана медиан. Но это довольно продвинутый материал. Кстати, если это домашнее задание, пометьте его соответствующим образом.   -  person MvG    schedule 23.07.2012


Ответы (1)


Ваш код выглядит хорошо, но он предполагает, что массив отсортирован. Просто отсортируйте его:

Arrays.sort(TheArrayAssignment);
person tiwo    schedule 21.07.2012