Leetcode: 3Sum Closest
来源:互联网 发布:matlab矩阵一行写不下 编辑:程序博客网 时间:2024/05/19 16:48
Given an array S of n integers, find three integers in S such that the sum is closest to a given number, target. Return the sum of the three integers. You may assume that each input would have exactly one solution.
For example, given array S = {-1 2 1 -4}, and target = 1. The sum that is closest to the target is 2. (-1 + 2 + 1 = 2).
思路: 和3Sum类似,排序后遍历最小值,和右边的值相加,并记录和target最相近的和,此时因为结果只需要得到和,而不是数列,所以不用理会重复元素的情况。
public class Solution { public int threeSumClosest(int[] num, int target) { if (num == null || num.length < 3) { return Integer.MAX_VALUE; } Arrays.sort(num); int res = Integer.MAX_VALUE / 2; for (int i = 0; i < num.length - 2; i++) { int second = i + 1, third = num.length - 1; while (second < third) { int sum = num[i] + num[second] + num[third]; if (sum == target) { return target; } else if (sum > target) { third--; } else { second++; } if (Math.abs(target - sum) < Math.abs(target - res)) { res = sum; } } } return res; }}
0 0
- LeetCode: 3 Sum Closest
- leetcode - 3 sum closest
- leetcode 3Sum Closest
- LeetCode: 3Sum Closest
- [Leetcode]3Sum Closest
- Leetcode: 3SUM Closest
- LeetCode 3Sum Closest
- [Leetcode] 3Sum Closest
- LeetCode : 3Sum Closest
- LeetCode 3Sum Closest
- [LeetCode] 3Sum Closest
- 【leetcode】3Sum Closest
- [LeetCode]3Sum Closest
- LeetCode-3Sum Closest
- LeetCode:3Sum Closest
- LeetCode | 3Sum Closest
- 【leetcode】3Sum Closest
- Leetcode: 3Sum Closest
- overtimeRecording
- MATLAB GUI新手备忘录
- 有向图的强连通分量(最小生成树)
- Android开发系列(六):Android应用中文件的操作模式
- Android-如何给View添加边框,边框颜色和线的粗细可以自定义
- Leetcode: 3Sum Closest
- ZigZag Conversion leetcode
- android自定义弹出框样式实现
- hdu4751(判断二分图)
- hdu1561树形dp
- 如何选择开源协议
- How to make Closed polygon
- android笔记总结
- Qt中translate、tr关系 与中文问题