【发布时间】:2021-02-07 04:05:03
【问题描述】:
public static void generatePowerSet(ArrayList<Pair<Integer,Integer>> pairList, int n_items) {
Deque<Integer> set = new ArrayDeque<>();
if (n_items == 0) {
System.out.println(set);
return;
}
Object[] pair_array = pairList.toArray();
// consider the n'th element
set.addLast((Integer) pair_array[n_items - 1]);
generatePowerSet(pairList, n_items - 1);
// or don't consider the n'th element
set.removeLast();
generatePowerSet(pairList, n_items - 1);
System.out.println(set);
}
我很难找到允许我这样做的文档,到目前为止,我有这个函数来生成一个带有输入的 powerset (pairList, int n_items)
n_items 是 ArrayList 中的对数 我试图将数组列表更改为数组 (toArray()),但在传入 arrayList 时遇到类型转换问题。有没有更好的方法可以从这个数组列表中创建一个电源集?
【问题讨论】: