题目浅析

  • 想查看原题可以点击题目链接

  • 简单地说,就是给一个整型数组和目标值,从数组中找出两个值之和正好为目标值的下标,题目保证数组不重复,且必有唯一答案。要求两个下标不能相同。

思路分享

代码解答(强烈建议自行解答后再看)

  • 参考题解
1
2
3
4
5
6
7
8
9
10
11
12
13
14
class Solution {
public:
vector<int> twoSum(vector<int>& nums, int target) {
unordered_map<int, int> rec;
for (int i = 0; i < nums.size(); i++) {
const auto &it = rec.find(target-nums[i]);
if (it!=rec.end()) {
return {it->second, i};
}
rec[nums[i]] = i;
}
return {};
}
};