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
相关推荐
宁清明37 分钟前
【小宁的学习日记2 C语言】C语言判断
c语言·学习·算法
2401_841495642 小时前
【数据结构】基于Prim算法的最小生成树
java·数据结构·c++·python·算法·最小生成树·prim
祈祷苍天赐我java之术4 小时前
解析常见的限流算法
java·数据结构·算法
Shinom1ya_4 小时前
算法 day 34
算法
啊董dong4 小时前
课后作业-2025-10-26
c++·算法·noi
liu****4 小时前
1.模拟算法
开发语言·c++·算法·1024程序员节
小猪咪piggy4 小时前
【算法】day10 分治
数据结构·算法·排序算法
又是忙碌的一天4 小时前
算法学习 13
数据结构·学习·算法
June`4 小时前
前缀和算法:高效解决区间和问题
算法·1024程序员节
再卷也是菜4 小时前
算法基础篇(9)倍增与离散化
c++·算法