在 JavaScript 中具有所需总和的三元组
我们需要编写一个JavaScript函数,它接受一个数字数组作为第一个参数,一个数字作为第二个参数。该函数应准备并返回所有此类三元组(连续或非连续)的数组,这些三元组的总和为第二个参数指定的数字。
例如-
如果输入数组和数字是-
const arr = [4, 2, 0, 1, 2, 6, 8, 3, 2, 5]; const num = 8;
那么输出数组应该是-
const output = [ [ 2, 2, 4 ], [ 1, 3, 4 ], [ 0, 2, 6 ], [ 1, 2, 5 ] ];
示例
以下是代码-
const arr = [4, 2, 0, 1, 2, 6, 8, 3, 2, 5]; const num = 8; const tripletSum = (arr, num) => { if (arr.length === 3) { if (arr[0]+arr[1]+arr[2] === 0) { return [[arr[0],arr[1],arr[2]]]; }; }; const results = []; const hashMap = {}; for (var i=0; i输出结果 以下是控制台输出-
[ [ 2, 2, 4 ], [ 1, 3, 4 ], [ 0, 2, 6 ], [ 1, 2, 5 ] ]