目标:
实现方法:
class Solution {
public:
/**
*
* @param numbers int整型vector
* @param target int整型
* @return int整型vector
*/
vector<int> twoSum(vector<int>& numbers, int target) {
// write code here
//创建vector保存结果
vector<int> res;
//创建hash表,分别表示数组值和下标
unordered_map<int, int> hash;
for (int i = 0; i < numbers.size(); i++) {
int temp = target - numbers[i];
//如果找到就push到res中
if (hash.find(temp) != hash.end()) {
res.push_back(hash[temp] + 1);
res.push_back(i + 1);
break;
} else
hash[numbers[i]] = i; //不存在就放到哈希表中
}
return res;
}
};