服务器之家

服务器之家 > 正文

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

时间:2019-12-07 20:41     来源/作者:八大山人

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

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

  1. def perm(l): 
  2.   if(len(l)<=1): 
  3.     return [l] 
  4.   r=[] 
  5.   for i in range(len(l)): 
  6.     s=l[:i]+l[i+1:] 
  7.     p=perm(s) 
  8.     for x in p: 
  9.       r.append(l[i:i+1]+x) 
  10.   return r 

调用方法:

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

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

标签:

相关文章

热门资讯

2022年最旺的微信头像大全 微信头像2022年最新版图片
2022年最旺的微信头像大全 微信头像2022年最新版图片 2022-01-10
蜘蛛侠3英雄无归3正片免费播放 蜘蛛侠3在线观看免费高清完整
蜘蛛侠3英雄无归3正片免费播放 蜘蛛侠3在线观看免费高清完整 2021-08-24
背刺什么意思 网络词语背刺是什么梗
背刺什么意思 网络词语背刺是什么梗 2020-05-22
yue是什么意思 网络流行语yue了是什么梗
yue是什么意思 网络流行语yue了是什么梗 2020-10-11
暖暖日本高清免费中文 暖暖在线观看免费完整版韩国
暖暖日本高清免费中文 暖暖在线观看免费完整版韩国 2021-05-08
返回顶部