zoukankan      html  css  js  c++  java
  • 78. Subsets

    Given a set of distinct integers, nums, return all possible subsets.

    Note:

    • Elements in a subset must be in non-descending order.
    • The solution set must not contain duplicate subsets.

    For example,
    If nums = [1,2,3], a solution is:

    [
      [3],
      [1],
      [2],
      [1,2,3],
      [1,3],
      [2,3],
      [1,2],
      []
    ]

    class Solution {
    public:
        void dfs(vector<vector<int>>&u,int x,vector<int>& nums,vector<int>&v,int cnt,int n){
            if(cnt==n){
                //n++;
                u.push_back(v);
                return ;
            }
            for(int i=x;i<nums.size();i++){
                v.push_back(nums[i]);
                dfs(u,i+1,nums,v,cnt+1,n);
                v.pop_back();
            }    
        }
        vector<vector<int>> subsets(vector<int>& nums) {
            vector<vector<int>>u; 
            vector<int>v;
            sort(nums.begin(),nums.end());
            for(int i=0;i<=nums.size();i++){
                dfs(u,0,nums,v,0,i);
            }
            return u;
        }
    };
  • 相关阅读:
    HTML课堂笔记
    pycrul使用
    计算机网络概述
    重温冒泡排序
    初识MySQL
    宝塔Linux面板安装教程
    运维和shell
    nginx学习总结
    docker学习汇总
    linux 安装redis 完整步骤
  • 原文地址:https://www.cnblogs.com/pk28/p/5356236.html
Copyright © 2011-2022 走看看