LeetCode 题解之 Two Sum

时间:2023-03-10 04:15:40
LeetCode 题解之 Two Sum

1、题目描述

LeetCode 题解之 Two Sum

2、问题分析

使用hashTable 寻找,target  -  num[i] ,将时间复杂度降低到 O(n);

3、代码

 vector<int> twoSum(vector<int>& nums, int target) {
map<int ,int> m;
for( int i = ; i < nums.size() ; ++i ){
m[nums[i]] = i;
}
vector<int> result;
for( int i = ; i < nums.size() ; ++i ){
auto it = m.find( target - nums[i] ) ;
if( it != m.end() && it->second != i ){
result.push_back( i );
result.push_back( it->second );
break;
}
}
return result; }