美文网首页
三数之和

三数之和

作者: Haward_ | 来源:发表于2019-03-22 09:47 被阅读0次

    给定一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?找出所有满足条件且不重复的三元组。

    注意:答案中不可以包含重复的三元组。

    例如, 给定数组 nums = [-1, 0, 1, 2, -1, -4],

    满足要求的三元组集合为:
    [
    [-1, 0, 1],
    [-1, -1, 2]
    ]

    class Solution:
        def threeSum(self, nums):
            res = []
            if len(nums)<=2:
                return res
            nums.sort()
            for i in range(len(nums)):
                for j in range(i+1,len(nums)):
                    if nums[i]+nums[j]>0:
                        break
                    for k in range(j+1,len(nums)):
                        if nums[i]+nums[j]+nums[k]==0 and [nums[i],nums[j],nums[k]] not in res:
                            res.append([nums[i],nums[j],nums[k]])
                        elif nums[i]+nums[j]+nums[k]>0:
                            break
            return res
                           
    

    相关文章

      网友评论

          本文标题:三数之和

          本文链接:https://www.haomeiwen.com/subject/faakvqtx.html