leetcode 78.子集
程序员文章站
2022-04-04 11:11:21
...
这道题可以DFS,代码如下,很好理解
class Solution {
public:
void dfs(int index,int n,vector<int> tmp,vector<int>& nums,vector<vector<int>>& ans){
if(index==n){
ans.push_back(tmp);
return;}
tmp.push_back(nums[index]);//选当前索引的数字
dfs(index+1,n,tmp,nums,ans);
tmp.pop_back();//不选当前索引的数字
dfs(index+1,n,tmp,nums,ans);
}
vector<vector<int>> subsets(vector<int>& nums) {
vector<vector<int>> ans;
vector<int> tmp;
dfs(0,nums.size(),tmp,nums,ans);
return ans;
}
};
结果