解题思路:第一眼看过去觉得比较简单双指针循环遍历就好,但是需要注意判断是否有重复元素,重复元素不再去寻找
代码:
class Solution {
public:
vector<int> twoSum(vector<int>& numbers, int target) {
vector<int> sum;
for(int first=0;first<numbers.size()-1;first++){
//判断重复元素不再进行比较
if(first>0&&(numbers[first]==numbers[first-1]))
{
continue;
}
for(int end=first+1;end<numbers.size();end++){
if(numbers[first]+numbers[end]==target){
sum.push_back(first+1);
sum.push_back(end+1);
return sum;
}
}
}
return sum;
}
};