美文网首页
2019-05-26LeetCode15. 三数之和

2019-05-26LeetCode15. 三数之和

作者: mztkenan | 来源:发表于2019-05-26 22:06 被阅读0次

回溯,311 / 313 个通过测试用例,超时,15min

class Solution:
    def threeSum(self, nums: List[int]) -> List[List[int]]:
        nums.sort()
        res=[]
        # self.dfs(nums,0,0,[],res)
        return None

    def dfs(self,nums,start,remain,path,res):
        if len(path)==3  and remain==0:res.append(path+[])
        if len(path)<3:
            for i in range(start,len(nums)):
                if i!=start and nums[i]==nums[i-1]:continue
                path.append(nums[i])
                self.dfs(nums,i+1,remain-nums[i],path,res)
                path.pop()

java写了一遍真的麻烦,要多些很多字

class Solution {
    public List<List<Integer>> threeSum(int[] nums) {
        List<List<Integer>> res=new ArrayList();
        Arrays.sort(nums);
        dfs(nums,0,0,new ArrayList(),res);
        return res;
    }
    
    public void dfs(int[] nums,int start,int remain, List<Integer> path,List<List<Integer>> res){
        if (path.size()==3 && remain==0) res.add(new ArrayList(path));
        if (path.size()<3)
            for(int i =start;i<nums.length;i++){
                if (i!=start && nums[i]==nums[i-1]) continue;
                path.add(nums[i]);
                dfs(nums,i+1,remain-nums[i],path,res);
                path.remove(path.size()-1);
            }
        
    }
}

相关文章

  • 2019-05-26LeetCode15. 三数之和

    回溯,311 / 313 个通过测试用例,超时,15min java写了一遍真的麻烦,要多些很多字

  • algrithrom

    求和问题,双指针解决 done 两数之和 三数之和 最接近三数之和 四数之和 链表反转问题 done 链表反转 链...

  • LeetCode 第18题:四数之和

    1、前言 2、思路 采用三数之和的思路,原本三数之和可以分解为:数组中的一个数 + 此数右边的数求两数之和,那么四...

  • 两数之和&三数之和&四数之和&K数之和

    今天看了一道谷歌K数之和的算法题,忽然想起来之前在力扣上做过2、3、4数之和的题,觉得很有必要来整理一下。其实2、...

  • 两数之和,三数之和

    转载:https://www.cnblogs.com/DarrenChan/p/8871495.html 1. 两...

  • 双指针总结

    左右指针 主要解决数组中的问题:如二分查找 盛最多水的容器 三数之和 四数之和 最接近三数之和 快慢指针 主要解决...

  • 【LeetCode通关全记录】15. 三数之和

    【LeetCode通关全记录】15. 三数之和 题目地址:15. 三数之和[https://leetcode-cn...

  • leetcode top100

    1.求两数之和(数组无序) 2.求电话号码的字母组合 3.三数之和 4.两数之和(链表)

  • 纯C手撕leetcode-基本数据结构-hash table

    Hash table纯C实现两数之和和Hashtable 三数之和https://leetcode-cn.com/...

  • 三数之和

    三数之和 给定一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a +...

网友评论

      本文标题:2019-05-26LeetCode15. 三数之和

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