python常规方法实现数组的全排列

作者:八大山人 时间:2021-11-20 23:09:29 

本文实例讲述了常规方法实现python数组的全排列操作。分享给大家供大家参考。具体分析如下:

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


def perm(l):
 if(len(l)<=1):
   return [l]
 r=[]
 for i in range(len(l)):
   s=l[:i]+l[i+1:]
   p=perm(s)
   for x in p:
     r.append(l[i:i+1]+x)
 return r

调用方法:


if __name__=='__main__':
 """ default param is list(1,2,3,4,5) """
 l=[];
 if(len(sys.argv)<=1):
   """input=['%d' %(i) for i in xrange(1,6)]"""
   l=list((1,2,3,4,5))
 else:#input param looks like "2,3,4,5,6",no legal checks here.
   input=str(sys.argv[1])
   l=input.split(",")
   for i in xrange(len(l)):
     l[i] = int(l[i])
 print perm(l)

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

标签:python,数组,排列
0
投稿

猜你喜欢

  • Django中实现点击图片链接强制直接下载的方法

    2023-08-03 13:29:19
  • MySql数据库捕获sql语句异常的方法

    2011-08-05 18:17:28
  • 如何使用Iframe实现本页提交?

    2010-06-05 12:36:00
  • asp中提取HTML中图片的SRC路径

    2008-10-24 08:42:00
  • python GUI库图形界面开发之PyQt5布局控件QVBoxLayout详细使用方法与实例

    2022-10-12 11:37:27
  • Swin Transformer图像处理深度学习模型

    2022-01-16 22:32:08
  • JS本地刷新返回上一页代码

    2023-08-06 13:59:57
  • 关于python pygame游戏进行声音添加的技巧

    2023-06-25 16:12:30
  • 基于Python爬取51cto博客页面信息过程解析

    2023-06-11 16:27:37
  • SQL Server Bulk Insert 只需要部分字段时的方法

    2011-10-24 19:44:49
  • Python爬虫中Selenium实现文件上传

    2023-03-27 22:00:26
  • php session安全问题分析

    2023-11-15 06:45:29
  • Discuz!NT 论坛整合ASP程序论坛

    2011-03-31 10:40:00
  • python利用7z批量解压rar的实现

    2021-05-02 18:58:31
  • PHPCMS的使用小结

    2023-11-20 20:19:47
  • 如何编写一个高效的国税系统通讯录数据库?

    2009-11-07 18:53:00
  • PHP simplexml_load_file()函数讲解

    2023-06-03 23:16:56
  • numpy中的norm()函数求范数实例

    2022-01-02 01:36:45
  • 双击编辑功能如何实现

    2008-02-26 16:17:00
  • 如何用python绘制雷达图

    2023-04-19 12:44:09
  • asp之家 网络编程 m.aspxhome.com