python通过yield实现数组全排列的方法


Posted in Python onMarch 18, 2015

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

从n个不同元素中任取m(m≤n)个元素,按照一定的顺序排列起来,叫做从n个不同元素中取出m个元素的一个排列。当m=n时所有的排列情况叫全排列。
这段代码用到了yield方法,全排列速度加倍

def perm(arr, pos = 0):
  if pos == len(arr):
    yield arr
  for i in range(pos, len(arr)):
    arr[pos], arr[i] = arr[i], arr[pos]
    for _ in perm(arr, pos + 1): yield _
    arr[pos], arr[i] = arr[i], arr[pos]
for i in perm([1,2,3,4]):
  print i

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

Python 相关文章推荐
python操作xlsx文件的包openpyxl实例
May 03 Python
Laravel+Dingo/Api 自定义响应的实现
Feb 17 Python
Python数据类型之String字符串实例详解
May 08 Python
python3.7 的新特性详解
Jul 25 Python
详解解决Python memory error的问题(四种解决方案)
Aug 08 Python
python ffmpeg任意提取视频帧的方法
Feb 21 Python
python nohup 实现远程运行不宕机操作
Apr 16 Python
使用PyCharm安装pytest及requests的问题
Jul 31 Python
python进度条显示-tqmd模块的实现示例
Aug 23 Python
python 输入字符串生成所有有效的IP地址(LeetCode 93号题)
Oct 15 Python
Python批量删除mysql中千万级大量数据的脚本分享
Dec 03 Python
手把手教你配置JupyterLab 环境的实现
Feb 02 Python
python以环状形式组合排列图片并输出的方法
Mar 17 #Python
python将ip地址转换成整数的方法
Mar 17 #Python
python实现模拟按键,自动翻页看u17漫画
Mar 17 #Python
python通过pil为png图片填充上背景颜色的方法
Mar 17 #Python
python按照多个字符对字符串进行分割的方法
Mar 17 #Python
python通过floor函数舍弃小数位的方法
Mar 17 #Python
python常规方法实现数组的全排列
Mar 17 #Python
You might like
第六节--访问属性和方法
2006/11/16 PHP
php获取用户IPv4或IPv6地址的代码
2012/11/15 PHP
PHP设计模式之代理模式的深入解析
2013/06/13 PHP
php使用substr()和strpos()联合查找字符串中某一特定字符的方法
2015/05/12 PHP
JS中不为人知的五种声明Number的方式简要概述
2013/02/22 Javascript
Extjs Gird 支持中文拼音排序实现代码
2013/04/15 Javascript
js闭包的用途详解
2014/11/09 Javascript
js实现表单多按钮提交action的处理方法
2015/10/24 Javascript
jquery实现下拉框功能效果【实例代码】
2016/05/06 Javascript
js绘制购物车抛物线动画
2020/11/18 Javascript
jQuery UI仿淘宝搜索下拉列表功能
2017/01/10 Javascript
js实现4个方向滚动的球
2017/03/06 Javascript
JavaScript登录验证基础教程
2017/11/01 Javascript
不得不知的ES6小技巧
2018/07/28 Javascript
微信小程序自定义select下拉选项框组件的实现代码
2018/08/28 Javascript
webpack4.x CommonJS模块化浅析
2018/11/09 Javascript
vue-cli history模式实现tomcat部署报404的解决方式
2019/09/06 Javascript
[01:01:31]2018DOTA2亚洲邀请赛3月29日小组赛B组 Mineski VS paiN
2018/03/30 DOTA
Python黑魔法Descriptor描述符的实例解析
2016/06/02 Python
Python中字符串格式化str.format的详细介绍
2017/02/17 Python
Python2/3中urllib库的一些常见用法
2017/12/19 Python
基于Django用户认证系统详解
2018/02/21 Python
python抓取网站的图片并下载到本地的方法
2018/05/22 Python
Python中一些深不见底的“坑”
2019/06/12 Python
pyqt5 tablewidget 利用线程动态刷新数据的方法
2019/06/17 Python
pyqt5 键盘监听按下enter 就登陆的实例
2019/06/25 Python
西班牙最大的在线滑板和街头服饰商店:Fillow.net
2019/04/15 全球购物
意大利顶级奢侈品电商:LUISAVIAROMA(支持中文)
2020/05/26 全球购物
黄河象教学反思
2014/02/10 职场文书
买卖车协议书
2014/04/21 职场文书
授权委托书格式
2014/07/31 职场文书
离婚协议书范本(2014版)
2014/09/28 职场文书
小学运动会报道稿
2014/10/04 职场文书
停电通知范文
2015/04/16 职场文书
html实现弹窗的实例
2021/06/09 HTML / CSS
PHP中多字节字符串操作实例详解
2021/08/23 PHP