3Sum Closest
来源:互联网 发布:excel的数据分析工具 编辑:程序博客网 时间:2024/05/30 05:12
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).
算法:固定第一个,另外两个数适用双指针。O(N^2)
java:
public class Solution { public int threeSumClosest(int[] num, int target) { int len=num.length; int distance=Integer.MAX_VALUE; int sum=0; Arrays.sort(num); for(int i=0;i<len-2;i++){ int s=i+1; int e=len-1; while(s<e){ int cnt= num[i]+num[s]+num[e]; int dis = Math.abs(target-cnt); if(dis<=distance){ sum=cnt; distance=dis; if(sum==target){ return sum; }else if(sum<target){ s++; }else { e--; } }else if(cnt<target){ s++; }else{ e--; } } } return sum; }}
c++:
class Solution {public: int threeSumClosest(vector<int> &num, int target) { int size=num.size(); sort(num.begin(),num.end()); int close=0; int dis=INT_MAX; for(int i=0;i<size-2;i++){ int j=i+1; int k=size-1; while(j<k){ int sum=num[i]+num[j]+num[k]; if(abs(sum-target)<=dis){ dis=abs(sum-target); close=sum; if(sum==target){ return close; }else if(sum<target){ j++; }else{ k--; } }else if(sum-target<0){ j++; }else{ k--; } } } return close; }};
0 0
- 3 Sum & 3 Sum Closest
- 【Leetcode】3Sum Closest (Sum)
- LeetCode: 3 Sum Closest
- 3Sum Closest
- leetcode - 3 sum closest
- leetcode 3Sum Closest
- LeetCode: 3Sum Closest
- [Leetcode]3Sum Closest
- Leetcode: 3SUM Closest
- LeetCode 3Sum Closest
- [Leetcode] 3Sum Closest
- leetcode002:3sum closest
- LeetCode : 3Sum Closest
- LeetCode 3Sum Closest
- 3Sum Closest
- 3Sum Closest
- 3Sum Closest
- [LeetCode] 3Sum Closest
- IOS长按UITableViewCell进行移动
- 黑客高手是这样上网的!Vimium、Vimperator 浏览器插件让你全程用键盘快捷高效浏览网页
- [字典树] HDU 1004 - Let the Balloon Rise
- 00系统分析员 笔记2
- How to create a Maven web app and deploy to Tomcat - fast
- 3Sum Closest
- 关于sqlDataReader的问题
- firefox 中vim模式的操作--放弃鼠标
- Java中Comparable和Comparator
- Java float的精度问题
- [Sigcom13]Developing a Predictive Model ofQuality of Experience for Internet Video
- JavaWeb——Day17_1
- POJ 3132 & ZOJ 2822 Sum of Different Primes(dp)
- CSS之盒子模型与面向对象