gpt4 book ai didi

permutation - 生成所有长度的所有排列

转载 作者:行者123 更新时间:2023-12-04 02:13:37 26 4
gpt4 key购买 nike

您将如何生成列表 b(1,6,8,3,9,5) 的所有可能排列包括不同长度的?例子:

List a = [1,2,3]
generateperms(a)
1,2,3
3,1,2
3,2,1
1,3,2
2,1,3
2,3,1
2,3
1,2
1,3
2,1
3,2
3,1

等等并获得每个长度的所有排列?

编辑:
我只是打算使用这个用 python 编写的,效果很好:
import itertools  
a = ['a','b','c']
for i in range(len(a)):
print list(itertools.permutations(a,i+1))

最佳答案

我认为这将是每个子集的所有排列。

返回子集的最简单方法是考虑从 0(空集)到输入列表长度(完整集)的所有二进制整数。所以你从 0 开始计数,包括 2**(length(input))并使用结果屏蔽要从该特定子集中排除的所有元素。

从那里你应该能够使用'网上的许多代码示例中的任何一个来返回排列。

关于permutation - 生成所有长度的所有排列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4074991/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com