leetcode 3Sum Closest
2016-03-10 20:39
337 查看
题目链接
public class Solution { public int threeSumClosest(int[] nums, int target) { Arrays.sort(nums); int lastDistance=Integer.MAX_VALUE; int last=lastDistance; int result=0; out:for(int i=0;i<nums.length;i++) { if(last==nums[i]) { continue; } last=nums[i]; int j=i+1,k=nums.length-1; while(j<k) { int temp=(target-nums[i]-nums[j]-nums[k]); if(Math.abs(temp)<lastDistance) { lastDistance=Math.abs(temp); result=target-temp; } if(temp>0) { j++; } else if(temp<0) { k--; } else { break out; } } } return result; } }
相关文章推荐
- 泛型
- matlab所需插件
- java小细节
- #include<stdio.h>是什么意思啊!
- 程序员面试金典(动态规划):叠罗汉问题_最长递增子序列(java解法)
- lib,dll区别 及 VS中如何添加lib,dll
- HBase基本概念和hbase shell常用命令用法
- linux下获取程序当前目录绝对路径
- Hibernate - DetachedCriteria 的完整用法
- Android进程间通信Binder机制
- AFNetwork 作用和用法详解
- C++ new 长度为0的数组
- Android检测手机是否有网络连接可用
- 苹果官方 Crash文件分析方法 (iOS系统Crash文件分析方法)
- adb
- hdu4283You Are the One【区间dp】
- 编程 旋转矩阵
- SQL基础之名词
- 使用SqlAlchemy时如何方便的取得dict数据、dumps成Json
- 计算π的值