1. 程式人生 > >求所有arr陣列的子集

求所有arr陣列的子集

public static List<List> subsets(int[] nums) {
List<List> resList = new ArrayList<List>();
for(int i=0;i<=Math.pow(2, nums.length)-1;i++) {
List list = new ArrayList();
String a = Integer.toBinaryString(i); //轉化為二進位制
System.out.println(a.length());
for(int j=0;j<a.length();j++) {
char c = a.charAt(j); //取到String中的每個字元
if(c == ‘1’) list.add(nums[nums.length-a.length()+j]); //把對應位置為1的數字放入集合
}
resList.add(list);
}
return resList;
}