78、子集
class Solution {
List<List<Integer>> ans=new ArrayList<>();
List<Integer>path=new ArrayList<>();
public List<List<Integer>> subsets(int[] nums) {
ans.add(new ArrayList<>(path));//输出的是特殊子集 空子集
backtracking(nums,0);
return ans;
}
public void backtracking(int []nums,int startIndex){
if(startIndex==nums.length){
// ans.add(new ArrayList<>(path));
return ;
}
for(int i=startIndex;i<nums.length;i++){
path.add(nums[i]);
ans.add(new ArrayList<>(path));//画出树就明白了
backtracking(nums,i+1);
path.remove(path.size()-1);
}
}
}