python实现输出一个序列的所有子序列示例


Posted in Python onNovember 18, 2019

如下所示:

def sub(arr):
 finish=[]
 size = len(arr)
 end = 1 << size #end=2**size
 for index in range(end): # shift index
  array = []
  for j in range(size):
   # 00,01,10,11 is symmetrical
   if (index >> j) % 2: # this result is 1, so do not have to write ==
    array.append(arr[j])
  # print(array)
  finish.append(array)
 return finish

python实现输出一个序列的所有子序列示例

移位运算符 << 的优先级大于赋值 =

用01二进制串决定数组中的每个数字是否输出

[]=000;[1]=100;[2]=010;[3]=001;[1,2]=110;[1,2,3]=111…

如何实现?

第一个循环实现的是01串的遍历,eg.由000到111

第二个循环实现的是数组的遍历,eg.将000与数组中的每一位数字做判断

在if语句中,用到了向右移位,由于二进制串是对称的,所以我们可以将01串从后向前与数组中的每一位数字做判断。

eg.001与100对称,110与011对称…

在001中,最后一位是1,说明数组中3需要输出

但是在我们遍历数组的时候,先遇到的是1与arr[0],不过由于对称性,这种情况其实与在100中,后遇到的是1与arr[2]

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

Python 相关文章推荐
基于Python实现的扫雷游戏实例代码
Aug 01 Python
python操作CouchDB的方法
Oct 08 Python
Python判断操作系统类型代码分享
Nov 22 Python
Python语言的面相对象编程方式初步学习
Mar 12 Python
Python使用Pycrypto库进行RSA加密的方法详解
Jun 06 Python
python excel使用xlutils类库实现追加写功能的方法
May 02 Python
解决Django后台ManyToManyField显示成Object的问题
Aug 09 Python
Python OrderedDict的使用案例解析
Oct 25 Python
python GUI库图形界面开发之PyQt5信号与槽基础使用方法与实例
Mar 06 Python
python opencv 检测移动物体并截图保存实例
Mar 10 Python
Python调用jar包方法实现过程解析
Aug 11 Python
能让Python提速超40倍的神器Cython详解
Jun 24 Python
Python中的四种交换数值的方法解析
Nov 18 #Python
Django将默认的SQLite更换为MySQL的实现
Nov 18 #Python
DJango的创建和使用详解(默认数据库sqlite3)
Nov 18 #Python
详解Django配置优化方法
Nov 18 #Python
python爬虫爬取笔趣网小说网站过程图解
Nov 18 #Python
基于python操作ES实例详解
Nov 16 #Python
Python爬取豆瓣视频信息代码实例
Nov 16 #Python
You might like
怎么样可以把 phpinfo()屏蔽掉?
2006/11/24 PHP
php中使用Imagick实现图像直方图的实现代码
2011/08/30 PHP
基于PHP导出Excel的小经验 完美解决乱码问题
2013/06/10 PHP
深入解析Session是否必须依赖Cookie
2013/08/02 PHP
浅谈php命令行用法
2015/02/04 PHP
PHP随机获取未被微信屏蔽的域名(微信域名检测)
2017/03/19 PHP
PHPExcel实现的读取多工作表操作示例
2020/04/14 PHP
Jquery Ajax.ashx 高效分页实现代码
2009/10/20 Javascript
几个有趣的Javascript Hack
2010/07/24 Javascript
Jquery插件之多图片异步上传
2010/10/20 Javascript
JavaScript中的Web worker多线程API研究
2014/12/06 Javascript
JavaScript中数据结构与算法(五):经典KMP算法
2015/06/19 Javascript
Ajax 加载数据 练习代码
2017/01/05 Javascript
vue.js学习笔记:如何加载本地json文件
2017/01/17 Javascript
详解vue2路由vue-router配置(懒加载)
2017/04/08 Javascript
React组件之间的通信的实例代码
2017/06/27 Javascript
9102年webpack4搭建vue项目的方法步骤
2019/02/20 Javascript
[02:34]DOTA2英雄基础教程 幽鬼
2014/01/02 DOTA
windows下安装Python的XlsxWriter模块方法
2018/05/03 Python
Ubuntu下升级 python3.7.1流程备忘(推荐)
2018/12/10 Python
python3.4爬虫demo
2019/01/22 Python
python编写计算器功能
2019/10/25 Python
django 模型中的计算字段实例
2020/05/19 Python
网易微博Web App用HTML5开发的过程介绍
2012/06/13 HTML / CSS
巴西食品补充剂在线零售商:Músculos na Web
2017/08/07 全球购物
匡威爱尔兰官网:Converse爱尔兰
2019/06/09 全球购物
俄罗斯最大的在线珠宝大卖场:Nebo
2019/12/08 全球购物
中药学专业毕业生推荐信
2014/07/10 职场文书
领导党的群众路线教育实践活动个人对照检查材料
2014/09/23 职场文书
2014年销售员工作总结
2014/12/01 职场文书
2014工程部年度工作总结
2014/12/17 职场文书
本溪水洞导游词
2015/02/11 职场文书
教学督导岗位职责
2015/04/10 职场文书
幼儿园教师管理制度
2015/08/05 职场文书
在Django中使用MQTT的方法
2021/05/10 Python
nginx配置指令之server_name的具体使用
2022/08/14 Servers