【算法分析与设计·学习笔记·递归与分治策略】python实现全排列问题

【算法分析与设计·学习笔记·递归与分治策略】python实现全排列问题,第1张

问题描述:给定一个带有n个不同元素的集合,要求递归实现得到该序列的全排列。


输入样例:[1,2,3]

输出样例:

1 2 3 
1 3 2 
2 1 3 
2 3 1 
3 2 1 
3 1 2 

def permutation(a,m,n):
    if m==n:
        for i in range(len(a)):
            print(a[i],end=' '),

    else:
        for i in range(m,n+1):
            a[m],a[i]=a[i],a[m]
            permutation(a,m+1,n)
            a[m],a[i]=a[i],a[m]
a=[1,2,3]
permutation(a,0,len(a)-1)

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/580840.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-11
下一篇 2022-04-11

发表评论

登录后才能评论

评论列表(0条)

保存