/**
* @author lautturi.com
* Java example: get all the subsets of a set in java
*/
import java.util.*;
public class Lautturi {
private static List<List<Integer>> generateSubsets(int[] set) {
List<List<Integer>> subsets = new ArrayList<>();
int n = set.length;
for (int b = 0; b < (1 << n); b++) {
List<Integer> subset = new ArrayList<Integer>();
for (int i = 0; i < n; i++) {
if ((b & (1 << i)) != 0) {
subset.add(set[i]);
}
}
subsets.add(subset);
}
return subsets;
}
public static void main(String[] args) {
int[] arr = { 3,7,9 };
List<List<Integer>> subsets = generateSubsets(arr);
System.out.println(subsets);
}
}
output:
[[], [3], [7], [3, 7], [9], [3, 9], [7, 9], [3, 7, 9]]