我是否需要对数组进行排序以找到其中位数?

时间:2016-09-14 12:43:52

标签: javascript arrays math

我需要创建一个代码,如果我例如调用func([4, 8, 2, 4, 5]),该方法应该返回对象{max: 8, mean: 4.6, median: 4, min: 2, range: 6}

我应该从哪里开始?我是否需要一个用于对数字进行排序的代码,或者是否有代码,以便计算机可以找到中位数而不首先对数字进行排序?

1 个答案:

答案 0 :(得分:2)

你可以在不对数字进行排序的情况下找到中位数,但如果你想有效地做到这一点,那就太难了(因为每个元素都会计算出少于和等于它的元素数量,直到找到有元素的元素为止正确的中位数,这意味着它在中间,如果元素的数量是偶数,那么它甚至更有问题),另外你还可以使用排序进行其他统计(最大,最小等),为什么不只是排序?您可以使用sort()方法对数组进行排序。