组合类DFS-079求子集

问题:给定一个整数数组 nums ,数组中的元素 互不相同 。返回该数组所有可能的子集(幂集)。

回溯dfs

复制代码
class Solution:
    def subsets(self, nums: List[int]) -> List[List[int]]:
        res = []
        self.back_tracking(nums, 0, [], res) # 原list,起始索引,path(当前路径),结果
        return res

    def back_tracking(self, nums, idx, path, res):
        res.append(path[:])
        for i in range(idx, len(nums)):
            path += [nums[i]]
            self.back_tracking(nums, i+1, path, res)  # 开始分支
            path.pop()  # 回退
        return 
复制代码

 

posted @   今夜无风  阅读(18)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
点击右上角即可分享
微信分享提示