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 相关文章推荐
剖析Django中模版标签的解析与参数传递
Jul 21 Python
Django接受前端数据的几种方法总结
Nov 04 Python
Python时间获取及转换知识汇总
Jan 11 Python
python3.4用循环往mysql5.7中写数据并输出的实现方法
Jun 20 Python
python的继承知识点总结
Dec 10 Python
python实现杨氏矩阵查找
Mar 02 Python
浅析Python 读取图像文件的性能对比
Mar 07 Python
Django使用模板后无法找到静态资源文件问题解决
Jul 19 Python
Django中使用session保持用户登陆连接的例子
Aug 06 Python
python3 re返回形式总结
Nov 20 Python
python try...finally...的实现方法
Nov 25 Python
Python实现图片指定位置加图片水印(附Pyinstaller打包exe)
Mar 04 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
php生成图形验证码几种方法小结
2013/08/15 PHP
PHP缓存集成库phpFastCache用法
2014/12/15 PHP
PHP封装CURL扩展类实例
2015/07/28 PHP
PHP实现的迷你漂流瓶
2015/07/29 PHP
Codeigniter中集成smarty和adodb的方法
2016/03/04 PHP
浅谈PHP检查数组中是否存在某个值 in_array 函数
2016/06/13 PHP
JSON 学习之JSON in JavaScript详细使用说明
2010/02/23 Javascript
jquery动态添加删除div 具体实现
2013/07/20 Javascript
JavaScript Promise启示录
2014/08/12 Javascript
JavaScript DSL 流畅接口(使用链式调用)实例
2015/03/15 Javascript
jQuery使用$.each遍历json数组的简单实现方法
2016/04/18 Javascript
深入浅析JavaScript中的constructor
2016/04/19 Javascript
内容滑动切换效果jquery.hwSlide.js插件封装
2016/07/07 Javascript
用自定义图片代替原生checkbox实现全选,删除以及提交的方法
2016/10/18 Javascript
JSONP基础知识详解
2017/03/19 Javascript
AngularJS学习笔记之表单验证功能实例详解
2017/07/06 Javascript
详解vue-router的导航钩子(导航守卫)
2020/11/02 Javascript
[00:10]DOTA2全国高校联赛 以DOTA2会友
2018/05/30 DOTA
python函数式编程学习之yield表达式形式详解
2018/03/25 Python
解决tensorflow测试模型时NotFoundError错误的问题
2018/07/26 Python
新版Pycharm中Matplotlib不会弹出独立的显示窗口的问题
2020/06/02 Python
python os模块常用的29种方法使用详解
2020/06/02 Python
Python WebSocket长连接心跳与短连接的示例
2020/11/24 Python
HTML5触摸事件(touchstart、touchmove和touchend)的实现
2020/05/08 HTML / CSS
canvas版人体时钟的实现示例
2021/01/29 HTML / CSS
得到Class的三个过程是什么
2012/08/10 面试题
初始化了一个没有run()方法的线程类,是否会出错?
2014/03/27 面试题
你懂得怎么写自荐信吗?
2013/12/27 职场文书
会计与审计专业自荐信范文
2014/03/15 职场文书
小学毕业寄语大全
2014/04/03 职场文书
安全生产承诺书范文
2014/05/22 职场文书
安全施工标语
2014/06/07 职场文书
危货运输企业安全生产责任书
2014/07/28 职场文书
讲党性心得体会
2014/09/03 职场文书
发工资啦!教你用Python实现邮箱自动群发工资条
2021/05/10 Python
浅谈MySQL函数
2021/10/05 MySQL