力扣78. 子集

给你一个整数数组nums,数组中的元素互不相同。返回该数组所有可能的子集(幂集)。解集不能包含重复的子集。你可以按任意顺序返回解集。

示例 1:

输入:nums = [1,2,3]     输出:[[],[1],[2],[1,2],[3],[1,3],[2,3],[1,2,3]]

示例 2:

输入:nums = [0]     输出:[[],[0]]

回溯:

class Solution {
public:
    vector<vector<int>> ret;
    void dfs(const vector<int>& nums,int cur,vector<int>& s){
        if(cur==nums.size()){//位数从0开始,位数等于原序列长度时返回
            ret.push_back(s);//子集加入ret
            return;
        }

        dfs(nums,cur+1,s);//递归进入,不选当前元素

        s.push_back(nums[cur]);//递归进入,选当前元素
        dfs(nums,cur+1,s);
        s.pop_back();//回溯,弹出最后一个元素
    }

    vector<vector<int>> subsets(vector<int>& nums) {
        vector<int> s;//当前枚举的子集
        dfs(nums,0,s);

        return ret;
    }
};

相关推荐

  1. 78. 子集

    2024-06-08 19:56:06       32 阅读
  2. 子集78

    2024-06-08 19:56:06       14 阅读
  3. 子集II(90)

    2024-06-08 19:56:06       9 阅读
  4. _数组28—子集

    2024-06-08 19:56:06       31 阅读
  5. labuladong——一刷day78

    2024-06-08 19:56:06       37 阅读
  6. 77. 组合

    2024-06-08 19:56:06       30 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-06-08 19:56:06       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-06-08 19:56:06       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-06-08 19:56:06       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-06-08 19:56:06       18 阅读

热门阅读

  1. break、continue、return

    2024-06-08 19:56:06       11 阅读
  2. nginx location正则表达式+案例解析

    2024-06-08 19:56:06       11 阅读
  3. 设计模式-外观模式

    2024-06-08 19:56:06       8 阅读
  4. mysql怎么部署双机

    2024-06-08 19:56:06       8 阅读
  5. Percona XtraBackup备份用户需要的最小权限(mysql)

    2024-06-08 19:56:06       11 阅读
  6. 基于网格的CLIQUE聚类算法的实现

    2024-06-08 19:56:06       8 阅读
  7. Python | 开房门(map)

    2024-06-08 19:56:06       6 阅读
  8. hash和history路由模式的区别

    2024-06-08 19:56:06       7 阅读
  9. 深入Vue.js:从基础到进阶的全面学习指南

    2024-06-08 19:56:06       9 阅读
  10. 2024年BCSP-X小学高年级组初赛真题解析

    2024-06-08 19:56:06       11 阅读