在数组中找出三个数字的和等于指定数字js代码
时间: 2024-04-14 18:25:31 浏览: 121
在 JavaScript 中找到数组中三个数的和等于指定数字的问题可以使用双指针的方法来解决。以下是一个可能的解决方案:
```javascript
function findTriplets(array, target) {
array.sort((a, b) => a - b); // 对数组进行排序
const result = [];
for (let i = 0; i < array.length - 2; i++) {
let j = i + 1;
let k = array.length - 1;
while (j < k) {
const sum = array[i] + array[j] + array[k];
if (sum === target) {
result.push([array[i], array[j], array[k]]);
return result; // 返回找到的一组满足条件的数字
} else if (sum < target) {
j++; // 增加j指针
} else {
k--; // 减小k指针
}
}
}
return result; // 返回空数组,表示未找到满足条件的数字
}
// 测试示例
const array = [1, 2, 3, 4, 5];
const target = 9;
console.log(findTriplets(array, target));
```
在上述示例中,我们将数组[1, 2, 3, 4, 5]作为输入,并寻找和为9的三个数字。程序会输出[[1, 3, 5]],表示找到了一组满足条件的数字。
阅读全文