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打开url并按指定块读取网页内容的方法
Apr 29 Python
python正则表达式及使用正则表达式的例子
Jan 22 Python
利用Python如何生成便签图片详解
Jul 09 Python
对python pandas 画移动平均线的方法详解
Nov 28 Python
Python read函数按字节(字符)读取文件的实现
Jul 03 Python
Python 使用matplotlib模块模拟掷骰子
Aug 08 Python
Python Django 命名空间模式的实现
Aug 09 Python
Python closure闭包解释及其注意点详解
Aug 28 Python
python rsa实现数据加密和解密、签名加密和验签功能
Sep 18 Python
python中如何设置代码自动提示
Jul 15 Python
python判断一个变量是否已经设置的方法
Aug 13 Python
Django 实现图片上传和下载功能
Dec 31 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对字符串的递增运算分析
2010/08/08 PHP
php数据库配置文件一般做法分享
2012/07/07 PHP
php不用正则验证真假身份证
2013/11/06 PHP
Yii2使用$this->context获取当前的Module、Controller(控制器)、Action等
2017/03/29 PHP
ext 列表页面关于多行查询的办法
2010/03/25 Javascript
myFocus slide3D v1.1.0 使用方法与下载
2011/01/12 Javascript
JS图像无缝滚动脚本非常好用
2014/02/10 Javascript
js的延迟执行问题分析
2014/06/23 Javascript
Javascript解析URL方法详解
2014/12/05 Javascript
node.js中的fs.utimesSync方法使用说明
2014/12/15 Javascript
JS制作适用于手机和电脑的通知信息效果
2016/10/28 Javascript
js调用屏幕宽度的简单方法
2016/11/14 Javascript
jQuery实现火车票买票城市选择切换功能
2017/09/15 jQuery
js实现简单抽奖功能
2020/11/24 Javascript
python采集百度百科的方法
2015/06/05 Python
讲解Python的Scrapy爬虫框架使用代理进行采集的方法
2016/02/18 Python
python安装与使用redis的方法
2016/04/19 Python
python分析作业提交情况
2017/11/22 Python
Python cookbook(数据结构与算法)从任意长度的可迭代对象中分解元素操作示例
2018/02/13 Python
解决tensorflow1.x版本加载saver.restore目录报错的问题
2018/07/26 Python
Python3之手动创建迭代器的实例代码
2019/05/22 Python
python实现字典嵌套列表取值
2019/12/16 Python
Python bytes string相互转换过程解析
2020/03/05 Python
Python操作Excel把数据分给sheet
2020/05/20 Python
Dower & Hall官网:英国小众轻奢珠宝品牌
2019/01/31 全球购物
财务会计专业毕业生自荐信
2013/10/02 职场文书
临床医师专业个人自我评价范文
2013/11/07 职场文书
新闻专业推荐信范文
2013/11/20 职场文书
初中同学聚会感言
2014/02/11 职场文书
见习期自我鉴定范文
2014/03/19 职场文书
绿色家庭事迹材料
2014/05/01 职场文书
微笑服务标语
2014/06/24 职场文书
教师节祝酒词
2015/08/11 职场文书
担保书格式范文
2015/09/22 职场文书
vue首次渲染全过程
2021/04/21 Vue.js
Nginx源码编译安装过程记录
2021/11/17 Servers