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解析html开发库pyquery使用方法
Feb 07 Python
Python比较文件夹比另一同名文件夹多出的文件并复制出来的方法
Mar 05 Python
python操作ie登陆土豆网的方法
May 09 Python
简单谈谈Python中的几种常见的数据类型
Feb 10 Python
Python 字符串与二进制串的相互转换示例
Jul 23 Python
Python+OpenCV实现图像融合的原理及代码
Dec 03 Python
详解python3安装pillow后报错没有pillow模块以及没有PIL模块问题解决
Apr 17 Python
Python统计学一数据的概括性度量详解
Mar 03 Python
Python实现猜年龄游戏代码实例
Mar 25 Python
部署Django到阿里云服务器教程示例
Jun 03 Python
Python基于Faker假数据构造库
Nov 30 Python
python脚本框架webpy模板赋值实现
Nov 20 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
手冲咖啡应该是现代精品咖啡店的必备选项吗?
2021/03/03 冲泡冲煮
php ci框架验证码实例分析
2013/06/26 PHP
PHP7+Nginx的配置与安装教程详解
2016/05/10 PHP
PHP设计模式之工厂模式与单例模式
2016/09/28 PHP
php 根据URL下载远程图片、压缩包、pdf等文件到本地
2019/07/26 PHP
YII2框架使用控制台命令的方法分析
2020/03/18 PHP
JS实现程序暂停与继续功能代码解读
2013/10/10 Javascript
基于jQuery实现表单提交验证
2014/11/24 Javascript
JS或jQuery获取ASP.NET服务器控件ID的方法
2015/06/08 Javascript
jquery用ajax方式从后台获取json数据后如何将内容填充到下拉列表
2015/08/26 Javascript
JavaScript代码判断点击第几个按钮
2015/12/13 Javascript
javascript中this指向详解
2016/04/23 Javascript
jQuery实现图片轮播效果代码(基于jquery.pack.js插件)
2016/06/02 Javascript
微信小程序  modal弹框组件详解
2016/10/27 Javascript
Angular2学习笔记——详解路由器模型(Router)
2016/12/02 Javascript
jQuery文字轮播特效
2017/02/12 Javascript
Javascript封装id、class与元素选择器方法示例
2017/03/13 Javascript
如何使用JS在HTML中自定义字符串格式化
2017/07/20 Javascript
命令行批量截图Node脚本示例代码
2019/01/25 Javascript
Node.js中文件系统fs模块的使用及常用接口
2020/03/06 Javascript
python处理大数字的方法
2015/05/27 Python
详解Python读取配置文件模块ConfigParser
2017/05/11 Python
python引入导入自定义模块和外部文件的实例
2017/07/24 Python
Python中用字符串调用函数或方法示例代码
2017/08/04 Python
Python+OpenCV让电脑帮你玩微信跳一跳
2018/01/04 Python
使用EduBlock轻松学习Python编程
2018/10/08 Python
Matplotlib scatter绘制散点图的方法实现
2020/01/02 Python
Python自动化办公Excel模块openpyxl原理及用法解析
2020/11/05 Python
AmazeUI 加载进度条的实现示例
2020/08/20 HTML / CSS
德国帽子专家:Hutshopping
2019/11/03 全球购物
Jdbc数据访问技术面试题
2012/03/30 面试题
服务行业口号
2014/06/11 职场文书
证券区域经理岗位职责
2015/04/10 职场文书
消防隐患整改通知书
2015/04/22 职场文书
python 办公自动化——基于pyqt5和openpyxl统计符合要求的名单
2021/05/25 Python
上个世纪50年代的可穿戴技术:无线电帽子
2022/02/18 无线电