zoukankan      html  css  js  c++  java
  • [leetcode]3Sum Closest @ Python

    原题地址:http://oj.leetcode.com/problems/3sum-closest/

    题意:数组中每三个元素进行求和,找出所有和中大小最接近target的和,并返回这个和与target之间的差值。

    解题思路:使用一个变量mindiff来监测和与target之间的差值,如果差值为0,直接返回sum值。

    代码:

    class Solution:
        # @return an integer
        def threeSumClosest(self, num, target):
            num.sort()
            mindiff=100000
            res=0
            for i in range(len(num)):
                left=i+1; right=len(num)-1
                while left<right:
                    sum=num[i]+num[left]+num[right]
                    diff=abs(sum-target)
                    if diff<mindiff: mindiff=diff; res=sum
                    if sum==target: return sum
                    elif sum<target: left+=1
                    else: right-=1
            return res
  • 相关阅读:
    Project项目视图
    Console(控制台视图)
    Layout布局列表
    Layers层列表
    帐户下拉
    TransformGizmo(变换)切换
    Play播放控件
    变换工具
    工具栏
    Help帮助
  • 原文地址:https://www.cnblogs.com/zuoyuan/p/3699449.html
Copyright © 2011-2022 走看看