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中使用Boolean操作符做真值测试实例
Jan 30 Python
基于python实现的抓取腾讯视频所有电影的爬虫
Apr 22 Python
Python爬虫辅助利器PyQuery模块的安装使用攻略
Apr 24 Python
Python操作Sql Server 2008数据库的方法详解
May 17 Python
python实现windows下文件备份脚本
May 27 Python
windows系统中Python多版本与jupyter notebook使用虚拟环境的过程
May 15 Python
解决django后台样式丢失,css资源加载失败的问题
Jun 11 Python
python 输出列表元素实例(以空格/逗号为分隔符)
Dec 25 Python
浅析Python __name__ 是什么
Jul 07 Python
python进行二次方程式计算的实例讲解
Dec 06 Python
python实现简单猜单词游戏
Dec 24 Python
PyTorch 实现L2正则化以及Dropout的操作
May 27 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中批量生成静态html(命令行下运行PHP)
2014/04/19 PHP
PHP中把stdClass Object转array的几个方法
2014/05/08 PHP
PHP实现基于文本的摩斯电码生成器
2016/01/11 PHP
PHP微信支付实例解析
2016/07/22 PHP
Jquery 表单取值赋值的一些基本操作
2009/10/11 Javascript
javascript setTimeout和setInterval 的区别
2009/12/08 Javascript
JS实现时间格式化的方式汇总
2013/10/16 Javascript
jQuery实现简单二级下拉菜单
2015/04/12 Javascript
jQuery中animate动画第二次点击事件没反应
2015/05/07 Javascript
基于jquery实现简单的手风琴特效
2015/11/24 Javascript
jquery获取文档高度和窗口高度汇总
2016/01/25 Javascript
浅谈JavaScript变量的自动转换和语句
2016/06/12 Javascript
大型JavaScript应用程序架构设计模式
2016/06/29 Javascript
浅谈jQuery双事件多重加载的问题
2016/10/05 Javascript
基于JavaScript实现全选、不选和反选效果
2017/02/15 Javascript
利用jQuery实现一个简单的表格上下翻页效果
2017/03/14 Javascript
js学习总结之dom2级事件基础知识详解
2017/07/27 Javascript
AngularJS实现页面跳转后自动弹出对话框实例代码
2017/08/02 Javascript
socket在egg中的使用实例代码详解
2019/05/30 Javascript
微信小程序动态添加和删除组件的现实
2020/02/28 Javascript
[54:57]DOTA2-DPC中国联赛定级赛 Aster vs DLG BO3第二场 1月8日
2021/03/11 DOTA
pandas计数 value_counts()的使用
2019/06/24 Python
python线程信号量semaphore使用解析
2019/11/30 Python
python读取ini配置的类封装代码实例
2020/01/08 Python
Python数据可视化图实现过程详解
2020/06/12 Python
Python内置方法和属性应用:反射和单例(推荐)
2020/06/19 Python
做一个能自适应高度的textarea的示例代码
2019/09/06 HTML / CSS
美国廉价机票预订网站:Cheapfaremart
2018/04/28 全球购物
文员岗位职责范本
2014/03/08 职场文书
周年庆典主持词
2014/04/02 职场文书
2015国际残疾人日活动总结
2015/03/24 职场文书
MySQL基础(二)
2021/04/05 MySQL
MySQL安装后默认自带数据库的作用详解
2021/04/27 MySQL
pycharm 如何查看某一函数源码的快捷键
2021/05/12 Python
Spring mvc是如何实现与数据库的前后端的连接操作的?
2021/06/30 Java/Android
Nginx防盗链与服务优化配置的全过程
2022/01/18 Servers