147.组合总和II

java 复制代码
class Solution {
    List<List<Integer>> res=new ArrayList<>();
    List<Integer> li=new ArrayList<>();
    public List<List<Integer>> combinationSum2(int[] candidates, int target) {
        Arrays.sort(candidates);
        solut(candidates,target,0,0);
        return res;
    }
    void solut(int[] candidates, int target,int index,int listSum){
        if(listSum==target){
            res.add(new ArrayList<>(li));
            return;
        }
        for(int i=index;i<candidates.length&&listSum<=target;i++){
            if(i>index&&candidates[i]==candidates[i-1]){
                continue;
            }
            li.add(candidates[i]);
            listSum+=candidates[i];
            solut(candidates,target,i+1,listSum);
            listSum-=li.get(li.size()-1);
            li.remove(li.size()-1);
        }
    }
}
python 复制代码
class Solution(object):
    def combinationSum2(self, candidates, target):
        res=[]
        li=[]
        def solut(candidates,target,index,listSum):
            if listSum>target:
                return
            if listSum==target:
                res.append(li[:])
                return
            for i in range(index,len(candidates)):
                if i>index and candidates[i]==candidates[i-1]:
                    continue
                li.append(candidates[i])
                listSum+=candidates[i]
                solut(candidates,target,i+1,listSum)
                listSum-=li.pop()
        candidates=sorted(candidates)
        solut(candidates,target,0,0)
        return res
相关推荐
野犬寒鸦20 分钟前
从零起步学习并发编程 || 第四章:synchronized底层源码级讲解及项目实战应用案例
java·服务器·开发语言·jvm·后端·学习·面试
!停21 分钟前
数据结构二叉树——堆
java·数据结构·算法
a1117768 小时前
医院挂号预约系统(开源 Fastapi+vue2)
前端·vue.js·python·html5·fastapi
0思必得08 小时前
[Web自动化] Selenium处理iframe和frame
前端·爬虫·python·selenium·自动化·web自动化
virus59458 小时前
悟空CRM mybatis-3.5.3-mapper.dtd错误解决方案
java·开发语言·mybatis
一匹电信狗8 小时前
【LeetCode_547_990】并查集的应用——省份数量 + 等式方程的可满足性
c++·算法·leetcode·职场和发展·stl
鱼跃鹰飞9 小时前
Leetcode会员尊享100题:270.最接近的二叉树值
数据结构·算法·leetcode
Queenie_Charlie9 小时前
小陶的疑惑2
数据结构·c++·树状数组
没差c9 小时前
springboot集成flyway
java·spring boot·后端
时艰.10 小时前
Java 并发编程之 CAS 与 Atomic 原子操作类
java·开发语言