方法一:哈希表查找
class Solution {
public:
vector<int> twoSum(vector<int>& nums, int target) {
unordered_map<int,int> record;
vector<int> result;
for( int i = 0; i < nums.size(); i++ )
{
record[ nums[i] ] = i;
}
for(int i = 0; i <nums.size(); i++)
{
if( record.find(target - nums[i]) != record.end() )
{
result.push_back(nums[i]);
result.push_back( nums[ record[ target - nums[i] ]] );
return result;
}
}
throw invalid_argument("no solution");
}
};