查找 n 个参数的所有可能的组合(加和减)和 JavaScript
javascriptweb developmentfront end technologyobject oriented programming更新于 2024/1/11 16:44:17
我们需要编写一个 JavaScript 函数,该函数可以接受任意数量的参数(所有参数均为 Number 类型)。
该函数应计算所有可能的加法和减法和。
例如 − 如果参数为 1、2、3
则所有可能的组合都是 −
1 + 2 + 3 1 - 2 - 3 1 + 2 - 3 1 - 2 + 3
最后,该函数应求出最接近 0 的总和。在这种情况下,答案就是 0。
示例
const findSmallestPositive = (...arr) => {
let set = new Set([Math.abs(arr[0])]);
for (let i = 1;
i < arr.length; i++){
const secondSet = new Set;
for (let d of Array.from(set)){
secondSet.add(Math.abs(d + arr[i]))
secondSet.add(Math.abs(d - arr[i]))
};
set = secondSet;
};
return Math.min(...Array.from(set))
};
console.log(findSmallestPositive(5,3))
console.log(findSmallestPositive(1,2,3))
console.log(findSmallestPositive(1,2,3,5))
输出
这将产生以下输出 −
2 0 1
相关文章
有用资源
javascript 参考教程 - 该教程包含有关 javascript 的更多信息:https://www.cainiaomax.com/javascript/

