Как вычислить медиану массива чисел с помощью Ruby?
Я начинающий и в процессе моего обучения я стараюсь придерживаться того, что уже было изучено. Таким образом, другие вопросы, которые я нашел, выходят за рамки моих возможностей.
Вот мои заметки и моя попытка:
- сортировать массив в порядке возрастания.
- выяснить, является ли оно нечетным или даже длинным.
- если нечетно, разделите длину отсортированного массива +1 пополам. Что является индексом медианы. Верните это значение.
- если даже, найдите средние два числа отсортированного массива и разделите их на 1/2. Верните это значение.
- Поиск двух средних чисел:
- разделите отсортированную длину массива пополам. Это индекс pt. первый средний номер.
- разделите отсортированную длину массива + 2 пополам. Это индекс pt. из второй средний число.
-
берут среднее значение этих двух средних чисел.
def median(array) ascend = array.sort if ascend % 2 != 0 (ascend.length + 1) / 2.0 else ((ascend.length/2.0) + ((ascend.length + 2)/2.0) / 2.0) end end