欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

1. Two Sum

程序员文章站 2024-02-17 12:25:28
...

Given an array of integers, return indices of the two numbers such that they add up to a specific target.
You may assume that each input would have exactly one solution.
Example:

Given nums = [2, 7, 11, 15], target = 9,
Because nums[0] + nums[1] = 2 + 7 = 9,
return [0, 1].

**UPDATE (2016/2/13):
**The return format had been changed to zero-based indices. Please read the above updated description carefully.


Solution

/**
 * @param {number[]} nums
 * @param {number} target
 * @return {number[]}
 */
var twoSum = function(nums, target) {
    var len = nums.length;
    var result = [];
    var hash = [];
    for (var i = 0; i< len; i++) {
        if (hash[target - nums[i]] !== undefined) {
            result[0] = hash[target - nums[i]];
            result[1] = i;
            return result;
        } else {
            hash[nums[i]] = i;
        }
    }
};