Python实现求一个集合所有子集的示例


Posted in Python onMay 04, 2018

方法一:回归实现

def PowerSetsRecursive(items):
  """Use recursive call to return all subsets of items, include empty set"""
  
  if len(items) == 0:
    #if the lsit is empty, return the empty list
    return [[]]
  
  subsets = []
  first_elt = items[0] #first element
  rest_list = items[1:]
  
  #Strategy:Get all subsets of rest_list; for each of those subsets, a full subset list
  #will contain both the original subset as well as a version of the sebset that contains the first_elt
  
  for partial_sebset in PowerSetsRecursive(rest_list):
    subsets.append(partial_sebset)
    next_subset = partial_sebset[:] +[first_elt]
    subsets.append(next_subset)
  return subsets
def PowerSetsRecursive2(items):
  # the power set of the empty set has one element, the empty set
  result = [[]]
  for x in items:
    result.extend([subset + [x] for subset in result])
  return result

方法二:二进制法

def PowerSetsBinary(items): 
  #generate all combination of N items 
  N = len(items) 
  #enumerate the 2**N possible combinations 
  for i in range(2**N): 
    combo = [] 
    for j in range(N): 
      #test jth bit of integer i 
      if(i >> j ) % 2 == 1: 
        combo.append(items[j]) 
    yield combo

以上这篇Python实现求一个集合所有子集的示例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python脚本实现自动将数据库备份到 Dropbox
Feb 06 Python
Python实现视频下载功能
Mar 14 Python
python3.4下django集成使用xadmin后台的方法
Aug 15 Python
浅谈利用numpy对矩阵进行归一化处理的方法
Jul 11 Python
Python OpenCV利用笔记本摄像头实现人脸检测
Aug 20 Python
使用django的ORM框架按月统计近一年内的数据方法
Jul 18 Python
python集合的创建、添加及删除操作示例
Oct 08 Python
pytorch sampler对数据进行采样的实现
Dec 31 Python
pytorch标签转onehot形式实例
Jan 02 Python
django-crontab实现服务端的定时任务的示例代码
Feb 17 Python
使用PyWeChatSpy自动回复微信拍一拍功能的实现代码
Jul 02 Python
使用sublime text3搭建Python编辑环境的实现
Jan 12 Python
python list是否包含另一个list所有元素的实例
May 04 #Python
Python判断两个list是否是父子集关系的实例
May 04 #Python
python判断一个集合是否为另一个集合的子集方法
May 04 #Python
python3 判断列表是一个空列表的方法
May 04 #Python
python数字图像处理实现直方图与均衡化
May 04 #Python
用python处理图片实现图像中的像素访问
May 04 #Python
用python处理图片之打开\显示\保存图像的方法
May 04 #Python
You might like
PHP 创建文件(文件夹)以及目录操作代码
2010/03/04 PHP
通过缓存数据库结果提高PHP性能的原理介绍
2012/09/05 PHP
Vagrant(WSL)+PHPStorm+Xdebu 断点调试环境搭建
2019/12/13 PHP
解决PHPstudy Apache无法启动的问题【亲测有效】
2020/10/30 PHP
基于JQuery模仿苹果桌面的Dock效果(初级版)
2012/10/15 Javascript
asp.net中System.Timers.Timer的使用方法
2013/03/20 Javascript
Jquery仿IGoogle实现可拖动窗口示例代码
2014/08/22 Javascript
jQuery中height()方法用法实例
2014/12/24 Javascript
javascript作用域问题实例分析
2015/07/13 Javascript
javascript中new关键字详解
2015/12/14 Javascript
js简单判断flash是否加载完成的方法
2016/06/21 Javascript
vue实现一个炫酷的日历组件
2018/10/08 Javascript
浅谈Vue.use到底是什么鬼
2020/01/21 Javascript
JavaScript实现PC端四格密码输入框功能
2020/02/19 Javascript
Python实现的递归神经网络简单示例
2017/08/11 Python
python实现梯度下降算法
2020/03/24 Python
Python中的取模运算方法
2018/11/10 Python
Python 获取中文字拼音首个字母的方法
2018/11/28 Python
Python3.6+Django2.0以上 xadmin站点的配置和使用教程图解
2019/06/04 Python
Django框架使用内置方法实现登录功能详解
2019/06/12 Python
python字典嵌套字典的情况下找到某个key的value详解
2019/07/10 Python
一篇文章搞定Python操作文件与目录
2019/08/13 Python
Python操作Mongodb数据库的方法小结
2019/09/10 Python
Python datetime 格式化 明天,昨天实例
2020/03/02 Python
html5 touch事件实现触屏页面上下滑动(二)
2016/03/10 HTML / CSS
PHP数据运算类型都有哪些
2013/11/05 面试题
寻找迷宫的一条出路,o通路;X:障碍
2016/07/10 面试题
2013的个人自我评价
2013/12/26 职场文书
文明教师事迹材料
2014/01/16 职场文书
十八大闭幕感言
2014/01/22 职场文书
2014年征兵标语
2014/06/20 职场文书
小学综合实践活动总结
2014/07/07 职场文书
2014年老干部工作总结
2014/11/21 职场文书
2015小学教师年度考核工作总结
2015/05/12 职场文书
2016年感恩教师节校园广播稿
2015/12/18 职场文书
Python数据清洗工具之Numpy的基本操作
2021/04/22 Python