54 子集

1.题目描述

示例 1:

复制代码
输入:nums = [1,2,3]
输出:[[],[1],[2],[1,2],[3],[1,3],[2,3],[1,2,3]]

示例 2:

复制代码
输入:nums = [0]
输出:[[],[0]]

2.代码

cpp 复制代码
class Solution {
public:
    vector<vector<int>> res;
    vector<int> path;
    void backtrack(vector<int> &nums, int startindex){
        res.push_back(path);
        if(startindex >= nums.size()){
            return;
        }//递归终止条件
        for(int i = startindex;i<nums.size();i++){
            path.push_back(nums[i]);
            backtrack(nums,i+1);
            //回溯,比如当时path = {1 2 3}return到此处了,则需要回退到{1 2 }这一层继续for循环
            path.pop_back();
        }                   
    }
    vector<vector<int>> subsets(vector<int>& nums) {
        backtrack(nums,0);
        return res;
    }
};
相关推荐
张宇Joaquin几秒前
鲲鹏统一并行加速库KUPL--异步数据拷贝
线性代数·算法·矩阵·numpy
GlobalInfo2 分钟前
创新不是追逐热点,是在变化中建立长期竞争力
大数据·算法
lvwangshu8 分钟前
线性代数基础 Linear Algebra Basics
数学·算法
ZhouDevin32 分钟前
算法论文/数据集5——AlignPrune(CVPR2026)基于样本损失时间序列精确识别噪声样本
算法
十铭忘1 小时前
HMM(隐马尔可夫模型)的理解7——Baum–Welch 算法
人工智能·算法
明月_清风2 小时前
十大经典排序算法 Go 实现全解:从入门到面试通关
后端·算法·排序算法
liliangcsdn2 小时前
如何对IC时间序列进行汇总统计分析示例
人工智能·算法·机器学习
土司大王2 小时前
LeetCode hot100——缺失的第一个正数
数据结构·算法·leetcode
Cccp.1232 小时前
【leetcode】(二)认识O(NlogN)的排序
算法·leetcode
明月_清风3 小时前
算法时间复杂度:给小白的一堂"算快慢"课
后端·算法