您现在的位置: 万盛学电脑网 >> 程序编程 >> 网页制作 >> 脚本Html教程 >> 正文

python常规方法实现数组的全排列

作者:佚名    责任编辑:admin    更新时间:2022-06-22

 这篇文章主要介绍了python常规方法实现数组的全排列,实例分析了全排列的概念及Python常规实现技巧,需要的朋友可以参考下

   

本文实例讲述了常规方法实现python数组的全排列操作。分享给大家供大家参考。具体分析如下:

全排列解释:从n个不同元素中任取m(m≤n)个元素,按照一定的顺序排列起来,叫做从n个不同元素中取出m个元素的一个排列。当m=n时所有的排列情况叫全排列。

? 1 2 3 4 5 6 7 8 9 10 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

调用方法:

? 1 2 3 4 5 6 7 8 9 10 11 12 if __name__=='__main__': """ default param is list(1,2,3,4,5) """ l=[]; if(len(sys.argv)<=1): """input=['%d' %(i) for i in xrange(1,6)]""" l=list((1,2,3,4,5)) else:#input param looks like "2,3,4,5,6",no legal checks here. input=str(sys.argv[1]) l=input.split(",") for i in xrange(len(l)): l[i] = int(l[i]) print perm(l)

希望本文所述对大家的Python程序设计有所帮助。