JavaScript 中排除一个元素后的总和
假设我们有一个这样的整数数组 -
const arr = [12, 1, 4, 8, 5];
我们需要编写一个 JavaScript 函数,它以这样一个数组作为唯一参数。
然后,该函数应返回一个恰好包含两个整数的数组 -
第一个整数应该是排除任何一个元素后数组所有元素的最小可能和。
第二个整数应该是排除任何一个元素后数组所有元素的最大可能和。
我们的唯一条件是必须使用一个且仅一个 for 循环来完成此操作。
例如 -
对于上述数组,输出应为 -
const output = [18, 29];
因为排除的数字分别为 12 和 1。
示例
其代码为 -
const arr = [12, 1, 4, 8, 5]; const findExtremeNumbers = (arr = []) => { let sum = 0; let min = Infinity; let max = -Infinity; for(let i = 0; i < arr.length; i++){ const curr = arr[i]; sum += curr; if(curr > max){ max = curr; } if(curr < min){ min = curr; }; }; return [sum - max, sum - min]; }; console.log(findExtremeNumbers(arr));
输出
而在控制台中的输出为 -
[18, 29]
广告