当前位置: 首页 > news >正文

python如何全排列_python实现全排列

给定序列,输出其全排列

import time

def SWAP(i,j):

temp=strAP[i]

strAP[i]=strAP[j]

strAP[j]=temp

strAP=['A','B','C','D']

def CalAllP1(first,num):

if first==num-1: #到达最后一个元素,则退出

return

for i in range(first,num):

if i!=first: #输出时去掉重复

SWAP(i,first)

print(strAP)

CalAllP1(first+1,num) #递归调用,全排列后面的元素

SWAP(i,first)

beginTime=time.clock()

print(strAP)

CalAllP1(0,len(strAP))

endTime=time.clock()

print(endTime-beginTime)

给定序列,按字典序输出排列

import time

def SWAP(i,j):

temp=strAP[i]

strAP[i]=strAP[j]

strAP[j]=temp

strAP=[1,2,3,4]

def Reverse(i,j):

while i<=j:

temp=strAP[i]

strAP[i]=strAP[j]

strAP[j]=temp

i+=1

j-=1

def CallAllPByDictionary(num): #字典序排列

if num<1:

return

while True:

j=num-2

for i in range(num-2,-1,-1):

if strAP[i]strAP[i]:

break

SWAP(i,k)

Reverse(k,num-1) #降序k后面的元素

print(strAP)

CallAllPByDictionary(len(strAP))

相关文章:

  • 框架对比_2020年前端框架性能对比和评测
  • 动态规划走楼梯_看动画轻松理解递归与动态规划
  • extjs中store获取后台数据_Extjs 后台读取数据的下拉框
  • mysql建数据库实例_MySQL数据库基础(四)——MySQL数据库创建实例
  • mysql是基于关系模型的数据库_MySQL系列:MySQL关系型数据库架构
  • mysql nocount_存储过程之SET NOCOUNT ON/OFF 含义
  • mysql spatial简介_详细介绍mysql索引类型:FULLTEXT、NORMAL、SPATIAL、UNIQUE
  • mysql联立两个表_mysql同时查询两个表
  • mysql 1308_MySQL恢复数据报ERROR 1308 : LEAVE with no matching label
  • macos 在线安装mysql_在MACOSX上安装MYSQL
  • vb mysql 设置数据源_总结 vb与数据库的连接方法
  • h+后台主题ui框架_开源推荐 - EAdmin开箱即用的后台UI框架
  • include 路径_最短路径的算法:Floyd算法
  • 2表关联查询的mysql代码_两个服务器上的两个数据库表进行关联查询(显示列表)...
  • python compare()_Python Speech Compare
  • [NodeJS] 关于Buffer
  • 【RocksDB】TransactionDB源码分析
  • 【跃迁之路】【735天】程序员高效学习方法论探索系列(实验阶段492-2019.2.25)...
  • 11111111
  • 78. Subsets
  • Android开发 - 掌握ConstraintLayout(四)创建基本约束
  • docker容器内的网络抓包
  • E-HPC支持多队列管理和自动伸缩
  • EOS是什么
  • exports和module.exports
  • fetch 从初识到应用
  • Java-详解HashMap
  • Laravel 实践之路: 数据库迁移与数据填充
  • React as a UI Runtime(五、列表)
  • sessionStorage和localStorage
  • 开年巨制!千人千面回放技术让你“看到”Flutter用户侧问题
  • 文本多行溢出显示...之最后一行不到行尾的解决
  • 线上 python http server profile 实践
  • 阿里云ACE认证学习知识点梳理
  • 摩拜创始人胡玮炜也彻底离开了,共享单车行业还有未来吗? ...
  • 智能情侣枕Pillow Talk,倾听彼此的心跳
  • ​如何使用ArcGIS Pro制作渐变河流效果
  • # MySQL server 层和存储引擎层是怎么交互数据的?
  • #我与Java虚拟机的故事#连载17:我的Java技术水平有了一个本质的提升
  • (26)4.7 字符函数和字符串函数
  • (4)事件处理——(6)给.ready()回调函数传递一个参数(Passing an argument to the .ready() callback)...
  • (js)循环条件满足时终止循环
  • (MATLAB)第五章-矩阵运算
  • (十二)springboot实战——SSE服务推送事件案例实现
  • (转)visual stdio 书签功能介绍
  • (转)甲方乙方——赵民谈找工作
  • (转)平衡树
  • (转)树状数组
  • .net core使用RPC方式进行高效的HTTP服务访问
  • .net framwork4.6操作MySQL报错Character set ‘utf8mb3‘ is not supported 解决方法
  • .NET/C# 在代码中测量代码执行耗时的建议(比较系统性能计数器和系统时间)
  • .Net面试题4
  • /bin/bash^M: bad interpreter: No such file or directory
  • @CacheInvalidate(name = “xxx“, key = “#results.![a+b]“,multi = true)是什么意思
  • @configuration注解_2w字长文给你讲透了配置类为什么要添加 @Configuration注解