码迷,mamicode.com
首页 > 其他好文 > 详细

[leetcode 16] 最接近的三数之和

时间:2019-02-02 11:14:27      阅读:191      评论:0      收藏:0      [点我收藏+]

标签:https   elf   list   etc   参考   答案   sorted   sort   get   

给定一个包括n的整数数组nums,和一个目标值target。找出nums中的三个整数,使得它们的和与target最接近,返回这三个数的和。假定每次输入只存在一个答案。

示例:

nums = [-1,2,1,-4] 和 target = 1

与 target 最接近的三个数的和为2. (-1+2+1=2)

 

代码:

class Solution(object):
    def threeSumClosest(self,nums,target):
        """
        :type nums: List[int]
        :type target: int
        :rtype: int
        """

         if not nums:
         return []

         sortNum=sorted[nums]
         closest=sys.maxint

         for i in range(len(sortNum)):
            left= i+1
            right=len(sortNum)-1
            while left < right:
               Sum = sortNum[i]+sortNum[left]+sortNum[right] 
               if Sum == target:
                  return Sum
               elif: Sum > target:
                  right -=1
               else:
                  left +=1
               closest = Sum if abs(Sum - target) > abs (closest - target) else closest
          return closest 

        

(参考链接:https://www.jianshu.com/p/0399dbefd67e)

[leetcode 16] 最接近的三数之和

标签:https   elf   list   etc   参考   答案   sorted   sort   get   

原文地址:https://www.cnblogs.com/statlearning2019/p/10347816.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!