写一个方法找出在一个数组中和为目标值的两个整数

在前端开发中,你可以使用JavaScript来编写一个方法,该方法可以找出数组中和为目标值的两个整数。以下是一个简单的示例:

function findTwoSum(arr, target) {
    const map = new Map();

    for (let i = 0; i < arr.length; i++) {
        const complement = target - arr[i];

        if (map.has(complement)) {
            return [map.get(complement), i];
        }

        map.set(arr[i], i);
    }

    return null; // 如果没有找到符合条件的两个数,返回null
}

// 示例用法
const arr = [2, 7, 11, 15];
const target = 9;
const result = findTwoSum(arr, target);
console.log(result); // 输出: [0, 1],表示arr[0] + arr[1] = target

这个findTwoSum函数接受一个数组arr和一个目标值target作为参数。它使用一个Map对象来存储已经遍历过的数组元素及其索引。在遍历数组时,对于每个元素,它计算出目标值与当前元素的差值(即补数),并检查Map中是否已经存在这个补数。如果存在,就返回补数的索引和当前元素的索引;如果不存在,就将当前元素及其索引添加到Map中。如果遍历完整个数组都没有找到符合条件的两个数,则返回null

posted @ 2024-12-24 10:24  王铁柱6  阅读(8)  评论(0编辑  收藏  举报