本文转载自【微信公众号:机器学习算法与Python精研,ID:AITop100】经微信公众号授权转载,如需转载与原文作者联系
题目:
给定一个包括 个整数的数组 nums和 一个目标值 target。找出 nums中的三个整数,使得它们的和与 target 最接近。返回这三个数的和。假定每组输入只存在唯一答案。
例如,给定数组 nums = [-1,2,1,-4], 和 target = 1.与 target 最接近的三个数的和为 2. (-1 + 2 + 1 = 2).
思路1:
同样采用列表先排序。
采用start和end逼近的方式来遍历所有元素。
关键要点要先取变量float(‘inf’),表示无穷大。
参考代码1:
class Solution: def threeSumClosest(self, nums, target): """ :type nums: List[int] :type target: int :rtype: int """ nums.sort() ans =0 diff = float("inf") for i in range(0,len(nums)):start ,end=i+1 ,len(nums)-1whilestarttarget:if (sum -target)
提交结果: