16. 3Sum Closest

LeetCode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
class Solution {
public int threeSumClosest(int[] nums, int target) {
Arrays.sort(nums);
int result=nums[0]+nums[1]+nums[nums.length-1];;

for(int i=0;i<nums.length-2;i++){
int start=i+1, end=nums.length-1;
while(start<end){
int sum=nums[i]+nums[start]+nums[end];
if(sum>target) end--;
else start++;
result=Math.abs(sum-target)<Math.abs(result-target)?sum:result;
}
}
return result;
}
}
0%