从给定的整数集中生成所有可能数字的算法是什么?

时间:2019-07-17 13:03:28

标签: python python-3.x algorithm permutation

我想从一组给定的整数中生成所有可能的数字组合。例如:如果1,2和3是给定的整数,则所有可能的组合是123,312,213,231,321和132 ...

2 个答案:

答案 0 :(得分:1)

itertools.permutations()是您要寻找的。参见https://docs.python.org/2/library/itertools.html#itertools.permutations

这将产生排列的列表,然后您需要将每个排列转换为一个整数。

答案 1 :(得分:0)

如果您对置换算法的工作方式感兴趣,那么有很多参考,包括Wikipedia。您将需要先将整数转换为字符串,以便能够更轻松地操作数字,然后根据需要将结果转换回整数。

如果您只需要结果,这里的另一个答案中提供的itertools就是您所需要的。