Python实现全排列的打印


Posted in Python onAugust 18, 2018

本文为大家分享了Python实现全排列的打印的代码,供大家参考,具体如下

问题:输入一个数字:3,打印它的全排列组合:123 132 213 231 312 321,并进行统计个数。

下面是Python的实现代码:

#!/usr/bin/env python
# -*- coding: <encoding name> -*- 
'''
全排列的demo
input : 3
output:123 132 213 231 312 321
'''
 
total = 0
 
def permutationCove(startIndex, n, numList):
  '''递归实现交换其中的两个。一直循环下去,直至startIndex == n
  '''
  global total
  if startIndex >= n:
    total += 1
    print numList
    return
    
  for item in range(startIndex, n):
    numList[startIndex], numList[item] = numList[item], numList[startIndex]
    permutationCove(startIndex + 1, n, numList )
    numList[startIndex], numList[item] = numList[item], numList[startIndex]
      
 
n = int(raw_input("please input your number:"))
startIndex = 0
total = 0
numList = [x for x in range(1,n+1)]
print '*' * 20
for item in range(0, n):
  numList[startIndex], numList[item] = numList[item], numList[startIndex]
  permutationCove(startIndex + 1, n, numList)
  numList[startIndex], numList[item] = numList[item], numList[startIndex]
 
print total

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python脚本实现12306火车票查询系统
Sep 30 Python
基于Python log 的正确打开方式
Apr 28 Python
tensorflow saver 保存和恢复指定 tensor的实例讲解
Jul 26 Python
Python数据类型之List列表实例详解
May 08 Python
Python 3.6 -win64环境安装PIL模块的教程
Jun 20 Python
python如何提取英语pdf内容并翻译
Mar 03 Python
Anaconda+vscode+pytorch环境搭建过程详解
May 25 Python
keras做CNN的训练误差loss的下降操作
Jun 22 Python
Python Map 函数的使用
Aug 28 Python
python实现杨辉三角的几种方法代码实例
Mar 02 Python
Python下opencv库的安装过程及问题汇总
Jun 11 Python
python的html标准库
Apr 29 Python
python递归实现快速排序
Aug 18 #Python
pyqt5的QWebEngineView 使用模板的方法
Aug 18 #Python
python递归全排列实现方法
Aug 18 #Python
python使用PIL给图片添加文字生成海报示例
Aug 17 #Python
Python在for循环中更改list值的方法【推荐】
Aug 17 #Python
Python简单读写Xls格式文档的方法示例
Aug 17 #Python
Python实现的连接mssql数据库操作示例
Aug 17 #Python
You might like
扩展你的 PHP 之入门篇
2006/12/04 PHP
PHP和Mysqlweb应用开发核心技术 第1部分 Php基础-3 代码组织和重用2
2011/07/03 PHP
PHP设计模式之解释器模式的深入解析
2013/06/13 PHP
thinkphp模板继承实例简述
2014/11/26 PHP
php使用timthumb生成缩略图的方法
2016/01/22 PHP
PHP高效获取远程图片尺寸和大小的实现方法
2017/10/20 PHP
关于Yii中模型场景的一些简单介绍
2019/09/22 PHP
Jquery 实现Tab效果 思路是js思路
2010/03/02 Javascript
JS判断不同分辨率调用不同的CSS样式文件实现思路及测试代码
2013/01/23 Javascript
jquery简单的拖动效果实现原理及示例
2013/07/26 Javascript
Javascript实现滚动图片新闻的实例代码
2013/11/27 Javascript
jquery根据一个值来选中select下的option实例代码
2016/08/29 Javascript
AngularJS 单元测试(二)详解
2016/09/21 Javascript
jQuery中$.ajax()方法参数解析
2016/10/22 Javascript
Vue关于数据绑定出错解决办法
2017/05/15 Javascript
vue项目使用axios发送请求让ajax请求头部携带cookie的方法
2018/09/26 Javascript
vue 利用路由守卫判断是否登录的方法
2018/09/29 Javascript
基于redis的小程序登录实现方法流程分析
2020/05/25 Javascript
原生小程序封装跑马灯效果
2020/10/21 Javascript
在Python中用keys()方法返回字典键的教程
2015/05/21 Python
Python松散正则表达式用法分析
2016/04/29 Python
python获取文件路径、文件名、后缀名的实例
2018/04/23 Python
详解Python 调用C# dll库最简方法
2019/06/20 Python
如何基于python3和Vue实现AES数据加密
2020/03/27 Python
Windows下pycharm安装第三方库失败(通用解决方案)
2020/09/17 Python
碧欧泉法国官网:Biotherm法国
2019/10/23 全球购物
构造方法和其他方法的区别
2016/04/26 面试题
会计工作决心书
2014/03/11 职场文书
颁奖晚会主持词
2014/03/25 职场文书
银行青年文明号事迹材料
2014/05/31 职场文书
单位授权委托书范本
2014/09/26 职场文书
2015年煤矿工作总结
2015/04/28 职场文书
检讨书格式
2015/05/07 职场文书
情人节单身感言
2015/08/03 职场文书
js不常见操作运算符总结
2021/11/20 Javascript
如何在python中实现ECDSA你知道吗
2021/11/23 Python