016.最接近的三数之和-技术派-二哥的 LeetCode 刷题笔记
鲁迅说过,读书不觉已春深,一寸光阴一寸金。每天进步一点点,坚持下去,你会发现,你的进步是惊人的。二哥的 LeetCode 刷题笔记,我要再刷一道三数之和,举一反三。
题意
给你一个长度为 n 的整数数组 nums 和一个目标值 target。请你从 nums 中选出三个整数,使它们的和与 target 最接近。
返回这三个数的和。假定每组输入只存在恰好一个解。
难度
中等
示例
输入:nums = [-1,2,1,-4], target = 1
输出:2
解释:与 target 最接近的和是 2 (-1 + 2 + 1 = 2) 。
输入:nums = [0,0,0], target = 1
输出:0
分析
既然是最接近的三数之和,那显然我们就可以采用015三数之和的题解思路,先排序,然后固定一个数,再用双指针去找另外两个数。
对三数之和的题解思路不熟悉的球友,可以回头再温故一下。
三数之和的时候和为 0,这里的和为最接近 target 的一个数,那其实解法就真的差不多了。
import java.util.Arrays;
public class Solution {
public int threeSumClosest(int[] nums, int target) {
// ...真诚点赞 诚不我欺
回复