Two Sum

原创 2015年07月08日 15:30:01

描述
Given an array of integers, find two numbers such that they add up to a specific target number.
The function twoSum should return indices of the two numbers such that they add up to the target, where
index1 must be less than index2. Please note that your returned answers (both index1 and index2) are not
zero-based.
You may assume that each input would have exactly one solution.
Input: numbers={2, 7, 11, 15}, target=9
Output: index1=1, index2=2
中文:
给定一个整形数组。如果数组里面有两个数相加等于目标数,返回他们的索引。
索引1必须比索引2小。
必须确保每个输入都有唯一解。
分析:没限制时间复杂度,可以用hash做。
另外,索引是从1开始的,所以要注意。


class Solution {
public:
vector<int> twoSum(vector<int> &num, int target) {
unordered_map<int, int> mapping;
vector<int> result;
for (int i = 0; i < num.size(); i++) {
mapping[num[i]] = i;
}
for (int i = 0; i < num.size(); i++) {
const int gap = target - num[i];
//leetcode题解有错误,两个索引不能相同。
if (mapping.find(gap) != mapping.end()&&mapping[gap]!=i) {
result.push_back(i + 1);
result.push_back(mapping[gap] + 1);
break;//必须有跳出循环。
}
}
return result;
}
};
版权声明:本文为博主原创文章,未经博主允许不得转载。

LeetCode::Two Sum C语言

题目 Given an array of integers, find two numbers such that they add up to a specific target number. ...
  • u013300875
  • u013300875
  • 2015年03月07日 15:39
  • 5552

leetcode 刷题题解(c++) 1.Two Sum (hash表,排序+二分查找)

c++刷leetcode,有题目和算法代码,可直接在leetcode提交通过。
  • GOGO_YAO
  • GOGO_YAO
  • 2016年07月24日 20:59
  • 660

算法系列--Two Sum

继续算法系列。今天再看一道leetcode(www.leetcode.com)的题目。问题描述原文 Given an array of integers, find two numbers suc...
  • ylyg050518
  • ylyg050518
  • 2015年09月13日 23:34
  • 947

Two Sum -- LeetCode

原题链接: http://oj.leetcode.com/problems/two-sum/ 这是一道非常经典的题目,brute force时间复杂度为O(n^2), 对每一对pair两两比较。 优...
  • linhuanmars
  • linhuanmars
  • 2014年02月22日 23:11
  • 20527

[LeetCode]1 Two Sum(C++,Python实现)

LeetCode OJ的第一题,题目描述如下:
  • Shiroh_ms08
  • Shiroh_ms08
  • 2014年05月16日 21:17
  • 1883

leetcode 170: Two Sum III - Data structure design

Two Sum III - Data structure design Total Accepted: 311 Total Submissions: 1345 Design and implem...
  • xudli
  • xudli
  • 2014年12月31日 08:17
  • 6998

LeetCode || Two Sum

Two Sum  Total Accepted: 16363 Total Submissions: 87273My Submissions Given an array of ...
  • jiadebin890724
  • jiadebin890724
  • 2014年04月09日 23:11
  • 33881

leetcode 1. Two Sum -----java

题目链接:https://leetcode.com/problems/two-sum/ 题目: Given an array of integers, return indices of th...
  • j754379117
  • j754379117
  • 2016年06月20日 19:52
  • 1414

371. Sum of Two Integers [easy] (Python)

题目链接https://leetcode.com/problems/sum-of-two-integers/题目原文 Calculate the sum of two integers a and...
  • coder_orz
  • coder_orz
  • 2016年07月26日 12:08
  • 3431

[LeetCode][1]Two Sum解析 -Java实现

Q: Given an array of integers, return indices of the two numbers such that they add up to a spe...
  • u014629433
  • u014629433
  • 2016年06月01日 16:23
  • 835
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Two Sum
举报原因:
原因补充:

(最多只允许输入30个字)