解题思路:
(1)使用回溯法,数组中每个位置的数可选可不选
class Solution {
private:
vector<vector<int>> vec;
public:
void helper(vector<int> temp,vector<int>& nums,int l) {
if(l>nums.size()) return;
vec.push_back(temp);
for(int i=l;i<nums.size();i++) {
temp.push_back(nums[i]);
helper(temp,nums,i+1);
temp.pop_back();
}
return;
}
vector<vector<int>> subsets(vector<int>& nums) {
vector<int> temp;
helper(temp,nums,0);
return vec;
}
};