文章目錄
兩數之和
利用map容器“一對一”記錄兩數關係. 主要思路是查找對偶數other是否被記錄, 如果無,則將當前元素作爲對偶數存入map;如果存在對偶數,則返回二者的索引. 時間複雜度, 空間複雜度
class Solution
{
public:
vector<int> twoSum(vector<int>& nums, int target)
{
map<int, int> record;
for(int i=0; i<nums.size(); i++)
{
int other = target - nums[i];
if(record.count(other))
{
return {i, record[other]};
}
else
{
other = nums[i];
record[other] = i;
}
}
return {-1,-1};
}
};