python生成n个元素的全组合方法


Posted in Python onNovember 13, 2018

利用二进制反格雷码(bynary reflected Gray code)的方式生成n个元素的全组合,Cn1+Cn2+...+Cnn,

如在利用穷举方法解决背包问题时,就需要找出物品的所有组合的子集。如有物品1,2,3.我们就可以生成3个位串的格雷码,0表示不选择该物品,1表示选择该物品。

算法如下所示:

import copy
def brgd(n):
 '''
 递归生成n位的二进制反格雷码
 :param n:
 :return:
 '''
 if n==1:
  return ["0","1"]
 L1 = brgd(n-1)
 L2 = copy.deepcopy(L1)
 L2.reverse()
 L1 = ["0" + l for l in L1]
 L2 = ["1" + l for l in L2]
 L = L1 + L2
 return L

以上这篇python生成n个元素的全组合方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
解决Python中字符串和数字拼接报错的方法
Oct 23 Python
Python随机读取文件实现实例
May 25 Python
Django实现分页功能
Jul 02 Python
python GUI实现小球满屏乱跑效果
May 09 Python
pandas DataFrame索引行列的实现
Jun 04 Python
Python操作远程服务器 paramiko模块详细介绍
Aug 07 Python
浅谈Python 递归算法指归
Aug 22 Python
Pycharm中出现ImportError:DLL load failed:找不到指定模块的解决方法
Sep 17 Python
python 6.7 编写printTable()函数表格打印(完整代码)
Mar 25 Python
Python+unittest+requests+excel实现接口自动化测试框架
Dec 23 Python
Python深度学习之Pytorch初步使用
May 20 Python
单身狗福利?Python爬取某婚恋网征婚数据
Jun 03 Python
python组合无重复三位数的实例
Nov 13 #Python
python自动化生成IOS的图标
Nov 13 #Python
python 获取键盘输入,同时有超时的功能示例
Nov 13 #Python
Python3自动签到 定时任务 判断节假日的实例
Nov 13 #Python
python判断输入日期为第几天的实例
Nov 13 #Python
python使用循环打印所有三位数水仙花数的实例
Nov 13 #Python
Python判断一个三位数是否为水仙花数的示例
Nov 13 #Python
You might like
一个简单的php实现的MySQL数据浏览器
2007/03/11 PHP
比较discuz和ecshop的截取字符串函数php版
2012/09/03 PHP
IIS6.0中配置php服务全过程解析
2013/08/07 PHP
php自定义函数实现二维数组排序功能
2016/07/20 PHP
浅谈PHP接入(第三方登录)QQ登录 OAuth2.0 过程中遇到的坑
2017/10/13 PHP
使用TextRange获取输入框中光标的位
2006/10/14 Javascript
JavaScript中的闭包原理分析
2010/03/08 Javascript
CSS和JS标签style属性对照表(方便js开发的朋友)
2010/11/11 Javascript
JS模拟自动点击的简单实例
2013/08/08 Javascript
Javascript单元测试框架QUnitjs详细介绍
2014/05/08 Javascript
jQuery实现加入收藏夹功能(主流浏览器兼职)
2016/12/24 Javascript
JavaScript仿聊天室聊天记录
2016/12/27 Javascript
js实现文本上下来回滚动
2017/02/03 Javascript
jQuery实现获取隐藏div高度的方法示例
2017/02/09 Javascript
Cropper.js 实现裁剪图片并上传(PC端)
2017/08/20 Javascript
vue之父子组件间通信实例讲解(props、$ref、$emit)
2018/05/22 Javascript
让 babel webpack vue 配置文件支持智能提示的方法
2019/06/22 Javascript
微信小程序实现张图片合成为一张并下载
2019/07/16 Javascript
JavaScript交换两个变量方法实例
2019/11/25 Javascript
微信小程序如何加载数据库真实数据的实现
2020/03/04 Javascript
Vue 中 template 有且只能一个 root的原因解析(源码分析)
2020/04/11 Javascript
详解Python if-elif-else知识点
2018/06/11 Python
python实现括号匹配的思路详解
2018/08/23 Python
ubuntu上安装python的实例方法
2019/09/30 Python
关于tf.reverse_sequence()简述
2020/01/20 Python
Python单例模式的四种创建方式实例解析
2020/03/04 Python
python爬虫实例之获取动漫截图
2020/05/31 Python
CSS3制作半透明边框(Facebox)类似渐变
2012/12/09 HTML / CSS
HTML5获取当前地理位置并在百度地图上展示的实例
2020/07/10 HTML / CSS
酒吧创业计划书
2014/01/18 职场文书
绿色校园广播稿
2014/10/13 职场文书
小学班主任事迹材料
2014/12/17 职场文书
采购员岗位职责
2015/02/03 职场文书
2015年世界艾滋病日活动总结
2015/03/24 职场文书
预备党员入党感想
2015/08/10 职场文书
java后台调用接口及处理跨域问题的解决
2022/03/24 Java/Android