剑指 Offer 57. 和为s的两个数字
package 剑指;
public class Offer57和为s的两个数字 {
public int[] twoSum(int[] nums, int target) {
int[]v =new int[2];
for(int i=0;i<nums.length;i++) {
for(int j=0;j<nums.length;j++) {
if(nums[i]+nums[j]==target) {
v[1]=nums[j];
v[0]=nums[i];
}
}
}
return v;
}
public static void main(String[] args) {
}
public int[] twoSum1(int[] nums, int target) {
int i = 0, j = nums.length - 1;
while(i < j) {
int s = nums[i] + nums[j];
if(s < target) i++;
else if(s > target) j--;
else return new int[] { nums[i], nums[j] };
}
return new int[0];
}
}