最接近的三数之和 _LintCode

来源:互联网 发布:使用ping命令测试网络 编辑:程序博客网 时间:2024/05/17 06:06
public class Solution {    /**     * @param numbers: Give an array numbers of n integer     * @param target : An integer     * @return : return the sum of the three integers, the sum closest target.     */    public int threeSumClosest(int[] numbers, int target) {        // write your code here         if (numbers==null||numbers.length<=0){            return -1;        }         int length = numbers.length;        //treemap的key是升序        Map<Integer,Integer> map = new TreeMap<Integer, Integer>();        for (int i=0;i<length-2;i++){            for (int j = i+1;j<length-1;j++){                for (int k = j+1;k<length;k++){                    map.put(Math.abs(numbers[i]+numbers[j]+numbers[k]-target),numbers[i]+numbers[j]+numbers[k]);                }            }        }        for (int i:map.keySet()){           return map.get(i);        }        return 0;    }}
原创粉丝点击