11得票8回答
打印列表的所有可能子集

我有一个元素列表 (1, 2, 3),我需要获取该列表的幂集(超集)(不重复元素)。因此,基本上我需要创建一个看起来像这样的列表:{1} {2} {3} {1, 2} {1, 3} {2, 3} {1, 2, 3} 什么是最佳(在这种情况下,简单比效率更重要,列表不会很大)实现方法?最好用Ja...

11得票4回答
在 R 中计算集合的幂集(所有可能的子集)的算法

我在任何地方都找不到答案,所以这是我的解决方案。 问题是:如何在 R 中计算幂集? 可以使用库“sets”来完成此操作,使用命令2^as.set(c(1,2,3,4)),它产生的输出为{{}, {1}, {2}, {3}, {4}, {1, 2}, {1, 3}, {1, 4}, {2, ...

8得票3回答
使用补集实现快速幂集

我希望有一个函数。 powersetWithComplements :: [a] -> [([a], [a])] 例如,这样的话: powersetWithComplements [1,2,3] = [([],[1,2,3]),([3],[1,2]),([2],[1,3]),([...

8得票1回答
为什么Data.Set没有powerset函数?

我正在研究 Data.Set,但是发现它没有 powerset 函数。为什么呢? 我可以这样实现它: import Data.Set (Set, empty, fromList, toList, insert) powerset :: (Ord a) => Set a -> ...

8得票5回答
高效节省内存的幂集算法

尝试计算9个字母字符串'ABCDEFGHI'的所有子集(幂集)。 使用标准递归方法,我的计算机在完成之前就会出现内存不足(1GB)的错误。我没有更多的物理内存可用。 有什么更好的方法吗?语言不是问题,将结果发送到标准输出也可以 - 输出之前不需要将其全部存在内存中。

7得票3回答
在Erlang或Ruby中生成一个集合的幂集,无需使用堆栈

我想生成一个相当大的集合(约30-50个元素)的幂集,我知道存储幂集需要2^n。 是否可能一次生成一个子集? 即:使用迭代生成集合的幂集,将每个生成的子集保存到磁盘/数据库中,从堆栈/内存中删除它,然后才继续生成其他子集? 不幸的是,我未能将Erlang和Ruby示例修改为满足我的需求。

7得票5回答
如何在DrRacket中执行幂集?

我正在使用DrRacket的简写列表语言,并想要递归地生成幂集,但无法弄清如何实现。目前我只有这么多: (define (powerset aL) (cond [(empty? aL) (list)] 需要任何帮助都可以。

7得票5回答
生成一个集合的所有“唯一”子集(不是幂集)

假设我们有一个Set S,其中包含一些子集: - [a,b,c] - [a,b] - [c] - [d,e,f] - [d,f] - [e] 假设集合 S 包含六个唯一元素:a, b, c, d, e 和 f。我们如何找到包含每个唯一元素的 S 的所有可能子集,每个元素仅出现一次? 函...

7得票4回答
这段代码列出一个集合的所有子集的时间复杂度是多少?

我在网上找到了很多O(2^n)复杂度的解决方案。有人能帮我算一下下面给出的代码的时间复杂度吗?此外,它涉及许多位操作,而我在这方面确实很弱,所以我没有完全掌握代码的要领。如果有人能解释一下这段代码就太好了。 private static void findSubsets(int array[...

7得票6回答
在幂集中,用于组合或子集的下一个排列

是否有相应的库或函数可以给我一组值的下一个组合,就像next_permutation在C++中为我所做的那样?