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
相关推荐
阿正的梦工坊5 分钟前
【Rust】06-函数、控制流与模块组织
开发语言·算法·rust
阿正的梦工坊10 分钟前
【Rust】16-async/await、Future 与执行器模型
网络·算法·rust
阿正的梦工坊14 分钟前
【Rust】11-Rust 所有权模型的编译期推理机制
开发语言·算法·rust
风筝在晴天搁浅18 分钟前
LeetCode CodeTop 88.合并两个有序数组
算法·leetcode·职场和发展
GuWen_yue19 分钟前
吃透二叉树与递归!60分钟掌握树结构核心+解题思路
javascript·算法
happymaker062620 分钟前
LeetCodeHot100——3.无重复字符的最长子串
算法
nice_lcj52025 分钟前
排序(2)-选择排序专题——简单选择排序与堆排序的结构优化
数据结构·算法·排序算法
nice_lcj52026 分钟前
排序(4)-归并排序专题——归并排序的分治美学
java·数据结构·算法·排序算法
洛水水41 分钟前
【力扣100题】83.最小栈
算法·leetcode·职场和发展
Zhang~Ling1 小时前
哈希表底层详解:从哈希函数到冲突处理的原理与实现
开发语言·c++·算法·哈希算法·散列表