思想:重点在于递增有序,所以我们可以利用两个指针,一个默认指向最小值,一个默认指向最大值,依据它们两的和与target的大小关系来动态调整这两个指针的指向(其实本质也就是一个滑动窗口的题)
class Solution {
public int[] twoSum(int[] nums, int target) {
int len = nums.length;
if(len<=1) return new int[0];
int left = 0,right = len-1;
while(left<right){
if(nums[left]+nums[right]==target){
return new int[]{nums[left],nums[right]};
}else if(nums[left]+nums[right]<target){
left++;
}else{
right--;
}
}
return new int[0];
}
}