力扣第四天:最接近的三数之和
和昨天做的三数之和相差不大
新了解到绝对值:Math.abs();
class Solution {
public int threeSumClosest(int[] nums, int target) {
Arrays.sort(nums);
int n = nums.length;
int m = nums[0]+nums[1]+nums[2];
for(int i = 0; i < n; i++){
int j = i+1;
int k = n-1;
while (j<k){
int s =nums[i]+nums[j]+nums[k];
if(Math.abs(s-target)<Math.abs(m-target)){
m = s;
}
if(s<target){
j++;
}
else if(s>target){
k--;
}
else
return target;
}
}
return m;
}
}
浙公网安备 33010602011771号