如何查找数组中有最小差异的两个元素?
问题描述:
如何在数组中找到两个具有最小差异的元素?如何查找数组中有最小差异的两个元素?
换句话说,如何找到两个具有最小标准差的元素。
例如,如果我有这样的数组:
ARR = [158,2,15,38,17,91]
其结果将是15和17
答
我假设问题是“数组中的两个元素是其最小差值的绝对值?”。
arr.combination(2).min_by { |a,b| (a-b).abs }
#=> [15, 17]
[* Standard deviation *](https://en.wikipedia.org/wiki/Standard_deviation)表示与平均数的差异,而不是数据集中两个值之间的差异。 – trincot
请阅读“[问]”,包括链接的页面和“[mcve]”。我们希望看到您的努力,无论是您搜索的地方,为什么他们没有帮助,或您为解决问题编写的代码。没有代码,它看起来像你要求我们为你写代码,这不是它的目的。请阅读http://meta.*.com/q/261592/128421,因为它有助于解释事情的努力方面。 –