查找在 JavaScript 中可以被某个数字整除的数组中的成对元素
我们需要编写一个 JavaScript 函数,它以数组的数字列表作为第一个参数(将其称作 arr),并以单个数字作为第二个参数(将其称作 num)。
这个函数应该在数组中找到所有成对元素,其中 −
arr[i] + arr[j] = num, and i < j
例如 −
如果是输入数组和数字 −
const arr = [1, 2, 3, 4, 5, 6]; const num = 4;
那么输出应该为 −
const output = [ [1, 3], [2, 6], [3, 5] ];
示例
此代码为 −
const arr = [1, 2, 3, 4, 5, 6]; const num = 4; const divisibleSumPairs = (arr = [], num) => { const res = []; const { length } = arr; for(let i = 0; i < length; i++){ for(let j = i + 1; j < length; j++){ const sum = arr[i] + arr[j]; if(sum % num === 0){ res.push([arr[i], arr[j]]); } } } return res; }; console.log(divisibleSumPairs(arr, num));
输出
控制台中的输出将为 −
[ [ 1, 3 ], [ 2, 6 ], [ 3, 5 ] ]
广告