leetcode-面试题 08.04. 幂集-幂集。编写一种方法,返回某集合的所有子集。解集不能包含重复的子集。-dfs+回溯

一、题目

leetcode-面试题 08.04. 幂集-幂集。编写一种方法,返回某集合的所有子集。解集不能包含重复的子集。-dfs+回溯_第1张图片

二、思路

dfs+回溯

三、代码

class Solution {
public:
    vector<vector<int>>res;
    vector<int>temp;
    vector<vector<int>> subsets(vector<int>& nums) {
        int size=nums.size();
        dfs(nums,0,size);
        return res;
    }
    void dfs(vector<int>& nums,int start,int &size){
        if(start==size){
            res.emplace_back(temp);
            return;
        }
        res.emplace_back(temp);
        for(int i=start;i<size;++i){
            temp.emplace_back(nums[i]);
            dfs(nums,i+1,size);
            temp.pop_back();
        }
    }
};

你可能感兴趣的:(LeetCode刷题,哈希算法,leetcode,散列表)