python通过yield实现数组全排列的方法
发布时间:2020-09-01 18:37:44 所属栏目:Python 来源:互联网
导读:本文实例讲述了python通过yield实现数组全排列的方法。分享给大家供大家参考。具体分析如下:
|
本文实例讲述了python通过yield实现数组全排列的方法。分享给大家供大家参考。具体分析如下: 从n个不同元素中任取m(m≤n)个元素,按照一定的顺序排列起来,叫做从n个不同元素中取出m个元素的一个排列。当m=n时所有的排列情况叫全排列。
def perm(arr,pos = 0):
if pos == len(arr):
yield arr
for i in range(pos,len(arr)):
arr[pos],arr[i] = arr[i],arr[pos]
for _ in perm(arr,pos + 1): yield _
arr[pos],arr[pos]
for i in perm([1,2,3,4]):
print i
希望本文所述对大家的Python程序设计有所帮助。 (编辑:哈尔滨站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
