LeetCode 0001 - Two Sum

2021-08-11 10:16:18 浏览数 (1)

Two Sum

Desicription

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, and you may not use the same element twice.

Example:

代码语言:javascript复制
Given nums = [2, 7, 11, 15], target = 9,

Because nums[0]   nums[1] = 2   7 = 9,
return [0, 1].

Solution

代码语言:javascript复制
class Solution{
    public:
    vector<int> twoSum(vector<int> &numbers, int target)
    {
        unordered_map<int, int>mp;
        for(int i = 0; i < numbers.size(); i  ){
            int need = target - numbers[i];
            if(mp.find(need) != mp.end()){
                vector<int>res;
                res.push_back(i);
                res.push_back(mp[need]);
                return res;
            }
            mp[numbers[i]] = i;
        }
    }
};

0 人点赞