脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服务器之家 - 脚本之家 - Python - python标准算法实现数组全排列的方法

python标准算法实现数组全排列的方法

2019-12-07 20:40八大山人 Python

这篇文章主要介绍了python标准算法实现数组全排列的方法,实例分析了全排列的原理与Python实现技巧,需要的朋友可以参考下

本文实例讲述了python标准算法实现数组全排列的方法,代码来自国外网站。分享给大家供大家参考。具体分析如下:

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

  1. def Mideng(li): 
  2.   if(type(li)!=list): 
  3.     return 
  4.   if(len(li)==1): 
  5.     return [li] 
  6.   result=[] 
  7.   for i in range(0,len(li[:])): 
  8.     bak=li[:] 
  9.     head=bak.pop(i) #head of the recursive-produced value 
  10.     for j in Mideng(bak): 
  11.       j.insert(0,head) 
  12.       result.append(j) 
  13.   return result 
  14. def MM(n): 
  15.   if(type(n)!=int or n<2): 
  16.     return 
  17.   return Mideng(list(range(1,n))) 

调用方法:   

  1. MM(6) 

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

延伸 · 阅读

精彩推荐