Wednesday, December 19, 2018

[LeetCode]Two Sum II - Input array is sorted

因为input是sorted的,所以我们用双指针即可解决这道题。时间复杂度O(N),常数空间,代码如下:


class Solution {
public:
vector<int> twoSum(vector<int>& numbers, int target) {
int len = numbers.size(), i = 0, j = len - 1;
while(i < j)
{
int sum = numbers[i] + numbers[j];
if(sum < target)++i;
else if(sum > target)--j;
else return {i + 1, j + 1};
}
return {-1, -1};
}
};

No comments:

Post a Comment