本文实例讲述了python标准算法实现数组全排列的方法,代码来自国外网站。分享给大家供大家参考。具体分析如下:
从n个不同元素中任取m(m≤n)个元素,按照一定的顺序排列起来,叫做从n个不同元素中取出m个元素的一个排列。当m=n时所有的排列情况叫全排列。
def Mideng(li):
if(type(li)!=list):
return
if(len(li)==1):
return [li]
result=[]
for i in range(0,len(li[:])):
bak=li[:]
head=bak.pop(i) #head of the recursive-produced value
for j in Mideng(bak):
j.insert(0,head)
result.append(j)
return result
def MM(n):
if(type(n)!=int or n<2):
return
return Mideng(list(range(1,n)))
调用方法:
MM(6)
希望本文所述对大家的Python程序设计有所帮助。
您可能感兴趣的文章:python递归全排列实现方法Python全排列操作实例分析python3实现字符串的全排列的方法(无重复字符)python非递归全排列实现方法python通过yield实现数组全排列的方法python常规方法实现数组的全排列python回溯法实现数组全排列输出实例分析python使用递归解决全排列数字示例python不带重复的全排列代码Python实现全排列的打印