脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服务器之家 - 脚本之家 - Python - python回溯法实现数组全排列输出实例分析

python回溯法实现数组全排列输出实例分析

2019-12-07 20:38八大山人 Python

这篇文章主要介绍了python回溯法实现数组全排列输出,以实例形式较为详细的分析了全排列的定义及回溯法的实现技巧,需要的朋友可以参考下

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

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

  1. from sys import stdout 
  2. #code from //www.zzvips.com/ 
  3. def perm(li, start, end): 
  4.   if(start == end): 
  5.     for elem in li: 
  6.       stdout.write(elem) 
  7.     print '' 
  8.   else
  9.     for i in range(start, end): 
  10.       li[start], li[i] = li[i], li[start] 
  11.       perm(li, start+1, end) 
  12.       li[i], li[start] = li[start], li[i] 
  13. if __name__ == '__main__'
  14.   li = ['a','b','c','d'
  15.   perm(li, 0, len(li)) 

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

延伸 · 阅读

精彩推荐