Given a set of distinct integers, nums, return all possible subsets (the power set).
Note: The solution set must not contain duplicate subsets.
Example:
Input: nums = [1,2,3] Output: [ [3], [1], [2], [1,2,3], [1,3], [2,3], [1,2], [] ]
这道题跟上一道题很像,解法也基本一致。77.Combinations
class Solution {
public:
void help(int index, int count,vector<int>nums,vector<int>tem, vector<vector<int>>& result){
result.push_back(tem);
for(int i=index+1;i<count;i++){
tem.push_back(nums[i]);
help(i,count,nums,tem,result);
tem.pop_back();
}
}
vector<vector<int>> subsets(vector<int>& nums) {
vector<int> tem;
vector<vector<int>> result;
int count = nums.size();
sort(nums.begin(),nums.end());
help(-1,count,nums,tem,result);
return result;
}
};