回溯题解:
class Solution {
List<List<Integer>> root=new ArrayList<>();
List<Integer> list=new ArrayList<>();
public List<List<Integer>> subsets(int[] nums) {
DFS(nums,0);
return root;
}
public void DFS(int[] nums,int start){
if(start==nums.length){
root.add(new ArrayList(list));
return;
}
list.add(nums[start]);
DFS(nums,start+1);
list.remove(list.size()-1);
DFS(nums,start+1);
}
}