解题思路: 一开始暴力,结果超时,然后利用快排的思想,两个index,一个从头部开始,另一个从尾部开始,每次若是相加和小于target,那么小的index++;否则,大的index++
class Solution {
public:
vector<int> twoSum(vector<int>& numbers, int target) {
vector<int> res;
int d1 = 0;
int d2 = numbers.size()-1;
while(numbers[d1]+numbers[d2] != target){
if(numbers[d1]+numbers[d2] < target)
d1++;
else
d2--;
}
res.push_back(d1+1);
res.push_back(d2+1);
return res;
}
};