你好说我有一些数据A -> ....
(n个数据点)。现在我从这些数据中获取给定数量的值 (m) - 现在我希望遍历这些值的所有唯一组合。
5 个值的示例,其中 2 个是唯一的:唯一的组合类似于“a + b”或“a + c” - 但是“c + d”与“b + c”相同。“B + E”与“A + D”相同
A x x x x
B x x x
C x x
D x x
E x
这些描述了一些几何“线”,整个标本可以围绕中点“镜像”。因此,对于任意数量的行,考虑到这种“镜像能力”,是否有一种聪明的算法可以迭代所有内容?
在给定集合大小 n 和项目数 m 的情况下,计算元素数的公式是什么?
---- “3 out 6”的示例:
它也非常类似于函数 combine(6,3) - 但是现在我用 - 而不是 x 标记了重复的行。
1 1 1 1 1 1 1 1 1 1 2
1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0
A x x x x x x x x - - A
B x x x x x x - - - - B
C x x x x x x - - - - C
D x x x - x - - - - - D
E x x x - x - - - - - E
F x x - - - - - - - - - F
所以可能的清单是:
ABC、ABD、ABE、ABF、ACD、ACE、ACF、ADE、BCD、BCE
20 个潜在候选人中有 10 个忽略了对称性。