您的位置:首页 > 其它

LeetCode:Two Sum

2016-03-12 12:15 411 查看


Two Sum

Total Accepted: 199288 Total
Submissions: 913621 Difficulty: Easy

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.

Hide Tags
Array Hash
Table

Hide Similar Problems
(M) 3Sum (M)
4Sum (M) Two Sum II - Input array is sorted (E)
Two Sum III - Data structure design

code:

class Solution {
public:
    vector<int> twoSum(vector<int>& nums, int target) {
        map<int,int> m;
        vector<int> ret;
        for(int i=0;i<nums.size();i++){
            m[nums[i]]=i;
        }
        for(int i=0;i<nums.size();i++){
            int tmp = target-nums[i];
            if(m.find(tmp)!=m.end() && m[tmp]>i){
                ret.push_back(i);
                ret.push_back(m[tmp]);
                break;
            }
        }
        return ret;
    }
};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: