python实现数组的全排列,常规算法
常规方法实现python数组的全排列操作
全排列解释:从n个不同元素中任取m(m≤n)个元素,按照一定的顺序排列起来,叫做从n个不同元素中取出m个元素的一个排列。当m=n时所有的排列情况叫全排列。
""" 皮蛋编程(https://www.pidancode.com) 创建日期:2022/3/30 功能描述:python实现数组的全排列,常规算法 """ def perm(l): if(len(l)<=1): return [l] r=[] for i in range(len(l)): s=l[:i]+l[i+1:] p=perm(s) for x in p: r.append(l[i:i+1]+x) return r print(perm([1,2,3]))
输出结果如下:
[[1, 2, 3], [1, 3, 2], [2, 1, 3], [2, 3, 1], [3, 1, 2], [3, 2, 1]]
以上代码在python3.9环境下测试通过。
相关文章