-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path1.two-sum.js
34 lines (29 loc) · 981 Bytes
/
1.two-sum.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
// https://leetcode.com/problems/two-sum/
// Given an array of integers nums and an integer target, return indices of the two numbers such that they add up to target.
// You may assume that each input would have exactly one solution, and you may not use the same element twice.
// You can return the answer in any order.
// Example 1:
// Input: nums = [2,7,11,15], target = 9
// Output: [0,1]
// Explanation: Because nums[0] + nums[1] == 9, we return [0, 1].
// Example 2:
// Input: nums = [3,2,4], target = 6
// Output: [1,2]
// Example 3:
// Input: nums = [3,3], target = 6
// Output: [0,1]
/**
* @param {number[]} nums
* @param {number} target
* @return {number[]}
*/
var twoSum = function (nums, target) {
let numberMap = new Map();
for (let index = 0; index < nums.length; index++) {
el = nums[index];
if (numberMap.has(target - el)) return [index, numberMap.get(target - el)];
else numberMap.set(el, index);
}
return [];
};
twoSum([3, 2, 4], 6);