解题思路
用unordered_map来做,扫描一遍数组即可,时间复杂度O(n)
class Solution {
public:
vector
<int> twoSum(vector
<int>& nums
, int target
) {
unordered_map
<int, int> heap
;
for(int i
= 0; i
< nums
.size(); i
++)
{
if(heap
.count(target
- nums
[i
])) return {heap
[target
- nums
[i
]], i
};
heap
[nums
[i
]] = i
;
}
return {};
}
};
转载请注明原文地址: https://lol.8miu.com/read-38537.html