Leetcode-Subsets(dfs)

来源:互联网 发布:残兵屠龙熔炼数据 编辑:程序博客网 时间:2024/05/21 08:55

Given a set of distinct integers, nums, return all possible subsets (the power set).

Note: 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:    vector<vector<int>> subsets(vector<int>& nums) {        vector<vector<int>> res;        vector<int> ans;        subs(nums,res,ans,0);        vector<int> space;        res.push_back(space);        return res;    }    void subs(vector<int>& nums,vector<vector<int>>& res,vector<int>& ans,int start){        for(int i=start;i<nums.size();i++){            ans.push_back(nums[i]);            res.push_back(ans);            subs(nums,res,ans,i+1);            ans.pop_back();        }    }};