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

yipeiwu_com6年前Python基础

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

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

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)))

调用方法:

MM(6)

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

相关文章

简单的python后台管理程序

简单的python后台管理程序

一、作业需求   二、流程图 三、源码与具体思路 import shutil import os import sys USER_LOGIN = {'is_lo...

运用PyTorch动手搭建一个共享单车预测器

运用PyTorch动手搭建一个共享单车预测器

本文摘自 《深度学习原理与PyTorch实战》 我们将从预测某地的共享单车数量这个实际问题出发,带领读者走进神经网络的殿堂,运用PyTorch动手搭建一个共享单车预测器,在实战过程中掌握...

python 矩阵增加一行或一列的实例

python 矩阵增加一行或一列的实例

矩阵增加行 np.row_stack() 与 np.column_stack() import numpy as np a = np.array([[4, 4,], [5, 5]])...

Tornado高并发处理方法实例代码

本文主要分享的是一则关于Tornado高并发处理方法的实例,具体如下: #!/bin/env python # -*- coding:utf-8 -*- import tornado...

在python中安装basemap的教程

在python中安装basemap的教程

1. 确保python环境安装完毕且已配置好环境变量 2. 安装geos: pip install geos 3. 下载.whl文件: (1)pyproj‑1.9.5.1&...