我试着列出所有可能的3人一组的组合,一个人可以由6个人组成。(A, B, C, D, E, F)
可能的组合:
{(B,D),(C,E),(G,H)}
{(B,C),(D,E),(G,H)}
{(B,E),(C,D),(G,H)}
我只能写:
from itertools import combinations
x = combinations('ABCDEF', 2)
z = [y for y in x]
我不知道我应该如何创建组合出的组合,文件是没有多大帮助。我想我得有人从头开始创建一个算法。你知道吗
您可以将其实现为回溯问题。首先,你需要找到所有的排列。在那之后,你应该把名单切成薄片。例如:第一个置换是[A,B,C,D,E,F]。你将像这样切片[(A,B),(C,D),(E,F)],第二个排列将是[A,B,C,D,F,E],切片是[(A,B),(C,D),(F,E)]。等等。你知道吗
相关问题 更多 >
编程相关推荐