查找数组的中位数

jrwalker14

我编写了一些返回未排序的奇数数组的中位数的代码,但没有返回偶数数组的中位数。

我知道,为了找到偶数数组的中位数,您必须对数组的中间两个数字取平均值,然后将它们取平均值。我无法将其转换为可用的代码。除了这段代码的明显冗长之外,问题似乎出在第7-8行,我不明白为什么。

我更喜欢提示而不是答案,但是,如果您要发布一些固定的代码,我也可以接受。

def media(array)
  sorted = array.sort
  list = sorted.length
  if list %2 != 0
    (list + 1) / 2.0
  else
    even = ((list.to_f + 2) / 2) + ((list.to_f / 2)
    return (even/2)
  end
end
js

我将在这里提出解决方案...

def median(ary)
  mid = ary.length / 2
  sorted = ary.sort
  ary.length.odd? ? sorted[mid] : 0.5 * (sorted[mid] + sorted[mid - 1])
end

编辑-我已经.odd?按照BroiSatse的建议进行了合并

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

查找数组的中位数

来自分类Dev

使用选择排序查找数组的中位数

来自分类Dev

在 C++ 数组中查找中位数(双精度)?

来自分类Dev

查找图像列表的中位数

来自分类Dev

查找arrayList中位数的问题

来自分类Dev

数组Matlab的行的中位数

来自分类Dev

Javascript中数组的中位数?

来自分类Dev

查找两个排序数组的中位数的时间复杂度

来自分类Dev

从队列中创建双向链表以查找中位数与使用数组的效率

来自分类Dev

查找2个大小相同的数组的中位数-O(log n)算法无法得出正确的结果

来自分类Dev

从总秒数数组的中位数中查找确切的小时数、分钟数、秒数

来自分类Dev

通过C加号函数查找中位数

来自分类Dev

在Spark Streaming中查找中位数

来自分类Dev

查找中位数的简单方法

来自分类Dev

在彩色范围内查找中位数

来自分类Dev

Python- Quickselect函数查找中位数

来自分类Dev

查找随机数的中位数

来自分类Dev

在Spark Streaming中查找中位数

来自分类Dev

Python 3.4,查找列表的中位数

来自分类Dev

在python中查找中位数时出错

来自分类Dev

快速查找输入中位数的方法

来自分类Dev

使用中位数对数组进行排序

来自分类Dev

找出数组中位数最多的数字

来自分类Dev

查找两个排序数组的中位数。可以消除一些不平等检查吗?

来自分类Dev

列表中位数的中位数

来自分类Dev

查找中位数而没有数据结构

来自分类Dev

使用2个堆查找中位数的复杂性

来自分类Dev

查找3个值的中位数的通用方法

来自分类Dev

从.txt文件Python 3.4.1查找中位数和模式