小编TOr*_*lly的帖子

解释算法背后的数学原理

给定一个已排序的整数数组 a,找到这样一个整数 x,它的值是

abs(a[0] - x) + abs(a[1] - x) + ... + abs(a[a.length - 1] - x) 是可能的最小值(这里 abs 表示绝对值)。如果有多个可能的答案,则输出最小的一个。

例子

对于 a = [2, 4, 7],输出应为 absoluteValuesSumMinimization(a) = 4。

我能够通过蛮力解决这个问题,但后来我发现了这个

function absoluteValuesSumMinimization(A) {
    return A[Math.ceil(A.length/2)-1];
}
Run Code Online (Sandbox Code Playgroud)

希望了解这是如何/为什么起作用的。

javascript algorithm math

9
推荐指数
1
解决办法
1068
查看次数

标签 统计

algorithm ×1

javascript ×1

math ×1