【发布时间】:2011-12-09 19:26:40
【问题描述】:
我的 C# 程序中有一个整数列表 List<int>。但是,我只在运行时才知道列表中的项目数。
让我们说,为了简单起见,我的列表是{1, 2, 3}
现在我需要生成所有可能的组合,如下所示。
{1, 2, 3}
{1, 2}
{1, 3}
{2, 3}
{1}
{2}
{3}
有人可以帮忙吗?
【问题讨论】:
-
您忘记了其中一种组合——空组合。请注意,您要查找的内容通常被称为集合的“幂集”。 ——也就是说,它是所有子集的集合。在您寻找解决方案时,这可能会对您有所帮助。
-
您想要所有可能的子集,而不是所有组合组合。 en.wikipedia.org/wiki/Combinations
-
@naveen 这绝对不是重复的。排列和组合是两个不同的东西。
-
LINQ 在这里回答:stackoverflow.com/a/3319689/1033684
标签: c# algorithm math combinations