(Tree) Subsets
24 Oct 2019 | algorithm programming leetcodehttps://leetcode.com/problems/subsets/
class Solution {
List<List> result = new ArrayList<>();
private void subsets(int[] nums, boolean[] flag, int n) {
if (n == nums.length) {
List list = new ArrayList<>();
for (int f = 0; f < flag.length; f++) {
if (flag[f]) {
list.add(nums[f]);
}
}
result.add(list);
return;
}
flag[n] = false;
subsets(nums, flag, n + 1);
flag[n] = true;
subsets(nums, flag, n + 1);
}
public List<List> subsets(int[] nums) {
boolean[] flag = new boolean[nums.length];
subsets(nums, flag, 0);
return result;
}
}
</pre>