Python算法练习,编程练习题实例八十三

题目:使用python标准算法实现数组全排列。、要求:从n个不同元素中任取m(m≤n)个元素,按照一定的顺序排列起来,叫做从n个不同元素中取出m个元素的一个排列。当m=n时所有的排列情况叫全排列。

#!/usr/bin/python

# -*- coding=utf-8 -*-

def Mideng(li):

   if (type(li) != list):

       return

   if (len(li) == 1):

       return [li]

   result = []

   for i in range(0, len(li[:])):

       bak = li[:]

       head = bak.pop(i)  # head of the recursive-produced value

       for j in Mideng(bak):

           j.insert(0, head)

           result.append(j)

   return result

def MM(n):

   if (type(n) != int or n < 2):

       return

   return Mideng(list(range(1, n)))

print(MM(6))

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180411B1A9ST00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券