LeetCode讲解篇之78. 子集

文章目录

题目描述

题解思路

初始化一个start变量记录当前从哪里开始遍历搜索nums

搜索过程的数字组合加入结果集

然后从start下标开始遍历nums,更新start,递归搜索

直到搜索完毕,返回结果集

题解代码

python 复制代码
class Solution:
    def subsets(self, nums: List[int]) -> List[List[int]]:
        res = []
        tmp = []
        n = len(nums)
        start = 0
        def dfs():
            nonlocal start
            res.append([num for num in tmp])
            for i in range(start, n):
                tmp.append(nums[i])
                start = i + 1
                dfs()
                tmp.pop()

        dfs()
        return res
相关推荐
码爸3 小时前
线性回归算法
算法·机器学习·线性回归
Coder-magician3 小时前
《代码随想录》刷题打卡day51:图论-part09(dijistra堆优化,Bellman_ford算法)
算法·图论
Nil2083 小时前
leetcode 763划分字母区间
算法·leetcode·职场和发展
不会就选b4 小时前
算法日常・每日刷题--<动态规划>20
算法·leetcode·动态规划
青少儿编程课堂5 小时前
迪杰斯特拉(Dijkstra)算法:单源最短路与赛场路线规划
c++·python·算法·bfs·信息学竞赛
不会就选b5 小时前
算法日常・每日刷题--<动态规划>19
算法·leetcode·职场和发展
考研保研资料分享5 小时前
新闻传播保研经验:中传预推免面试、广告学代表作与实习准备(2025)
面试·职场和发展
没有钱的钱仔6 小时前
协方差矩阵含义
算法·机器学习·矩阵
垆边人似月.6 小时前
华为机试题 :和为 K 的子数组个数
算法·leetcode·华为