leetcode 01 结果来自参考答案

/*暴力循环法*/
var twoSum = function(nums, target) {
    var a = [];
    for (var i = 0, len = nums.length; i < len; i++) {
        for(var j = i+1;j < len;j++){
            if(nums[j] == target - nums[i]){
                    return [ i,j ]
            }
        }
    }
};


/* 这种方法不是很理解 */
var twoSum = function(nums, target) {
    var a = [];
    for (var i = 0, len = nums.length; i < len; i++) {
    var tmp = target - nums[i];
    if (a[tmp] !== undefined) /* 这行代码用来测试目标数减去循环数的结果在原来数组中是否存在 */
        { return [a[tmp], i];}
    a[nums[i]] = i;
  }
};

通过暴力循环测试目标数减去循环数是否在数组中能够找到。如歌可以则返回结果。

猜你喜欢

转载自blog.csdn.net/huangzhehao97/article/details/82528808