LeetCode【16】

1.题目

在这里插入图片描述
这比上一个题简单多了,就是让你求最接近目标值的三个数的和。

2.解答

public class day_15 {
    public static void main(String[] args) {
        int[] number = {-3, -2, -5, 3, -4};
        System.out.println(new Solution().threeSumClosest(number, -1));
    }
}
class Solution {
    public int threeSumClosest(int[] nums, int target) {
        int result = nums[0] + nums[1] + nums[2];
        int abs = Math.abs(nums[0] + nums[1] + nums[2] - target);
        for (int i = 0; i < nums.length - 2; i++) {
            for (int i1 = i + 1; i1 < nums.length - 1; i1++) {
                for (int i2 = i1 + 1; i2 < nums.length; i2++) {
                    int sum = nums[i] + nums[i1] + nums[i2];
                    if (Math.abs(sum - target) < abs) {
                        abs = Math.abs(sum - target);
                        result = sum;
                    }
                }
            }
        }
        return result;
    }
}

水吧
有点水,没想到还有啥改进的
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/u012385160/article/details/89485245