#include <map> #include<iostream> #include<cstdio> class Solution { public: /** * * @param numbers int整型vector * @param target int整型 * @return int整型vector */ vector<int> twoSum(vector<int>& numbers, int target) { vector<int> res; map<int, int> hash; for (int i = 0; i < numbers.size(); i++) { // 寻找target不如寻找target和number的差值,并且map插入新的键值对也是在end插入的 if (hash.find(target - numbers[i]) != hash.end()) { res.push_back(hash[target - numbers[i]] + 1); res.push_back(i + 1); return res; } hash[numbers[i]] = i; } return res; } };