双指针,因为是递增数组,所以运用双指针,当s比两数之和小时,将左指针右移一位;当s比两数之和大时,将右指针左移一位
public:
vector<int> FindNumbersWithSum(vector<int> array,int sum) {
int i=0, j=array.size()-1;
vector<int>result;
while(i<j){
if(sum == array[i] + array[j]){
result.push_back(array[i]);
result.push_back(array[j]);
return result;
}
else if(sum > array[i] + array[j]){
i++;
}
else if(sum < array[i] + array[j]){
j--;
}
}
return result;
}
};