我有一个Card
实例数组。
Card[] allCards;
在以下条件下,我应该获得这些卡的所有可能组合:
- 所有组合必须至少有 3 张牌。
- 组合没有牌限制(所以如果总共有 15 张牌,你知道可以有 15 张牌的组合,其他 13、10 等)。
出于大学目的,我不应该使用任何能够更轻松地完成这项工作的精美库。
当然,我已经配对完成了,但考虑到没有限制,我通常会使用的算法不起作用。
这几乎就是他们对 python 的要求:查找所有可能的组合
有任何想法吗?我不想要代码或任何东西——我只是迷失了算法/想法。
我的问题(更详细)
我可以通过制作两个循环(一个在另一个循环中)来配对。我可以通过三个循环(一个在另一个循环中)来制作三胞胎。
但我不知道如何解决这个特定问题,因为:
- 如果阵列有 15 张卡怎么办?我不能写15个循环......
- 然后当然我需要下降到 14、13、12 个循环......(因为所有组合都不是每个 15 个元素,所以在使用这 15 个元素时可以有 14、13、12 个元素的组合-大批)
我可以找到一些组合,但不是动态的。