当前位置: 首页 > 编程日记 > 正文

任意排列、组合终极Shell脚本

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

作者:crulat 永夜

#!/bin/bash
# permutation_combination.sharg0=-1
number=${2}
eval ary=({1..${1}})
length=${#ary[@]}
output(){ echo -n ${ary[${!i}]}; }
prtcom(){ nsloop i 0 number+1 output ${@}; echo; }
percom(){ nsloop i ${1} number${2} ${3} ${4} ${5}; }
detect(){ (( ${!p} == ${!q} )) && argc=1 && break 2; }
invoke(){ echo $(percom ${argu} nsloop -1) ${para} $(percom ${argu}); }
permut(){ echo -n "${1} arg${i} ${2} "; (( ${#} != 0 )) && echo -n " length "; }
nsloop(){ for((${1}=${2}+1; ${1}<${3}; ++${1})); do eval eval \\\$\{{4..${#}}\}; done; }
combin(){ (( ${#} != 0 )) && echo -n "${1} arg$((i+1)) arg${i} length " || echo -n "arg$((i+1)) "; }
prtper(){ argc=0; nsloop p 0 number+1 nsloop q p number+1 detect ${@}; (( argc == 1 )) && return; prtcom ${@}; }case ${3} inp)para=prtperargu="-0 +1 permut" ;;c)para=prtcomargu="-1 +0 combin" ;; 
esac$(invoke)Invoke the script:
C 4 3
[root@node2 ~]# bash permutation_combination.sh 4 3 c
123
124
134
234P 4 3
[root@node2 ~]# bash permutation_combination.sh 4 3 p | xargs -n 6
123 124 132 134 142 143
213 214 231 234 241 243
312 314 321 324 341 342
412 413 421 423 431 432C 8 5
[root@node2 ~]# bash permutation_combination.sh 8 5 c | xargs -n 8
12345 12346 12347 12348 12356 12357 12358 12367
12368 12378 12456 12457 12458 12467 12468 12478
12567 12568 12578 12678 13456 13457 13458 13467
13468 13478 13567 13568 13578 13678 14567 14568
14578 14678 15678 23456 23457 23458 23467 23468
23478 23567 23568 23578 23678 24567 24568 24578
24678 25678 34567 34568 34578 34678 35678 45678P 5 5
[root@node2 ~]# bash permutation_combination.sh 5 5 p | xargs -n 12
12345 12354 12435 12453 12534 12543 13245 13254 13425 13452 13524 13542
14235 14253 14325 14352 14523 14532 15234 15243 15324 15342 15423 15432
21345 21354 21435 21453 21534 21543 23145 23154 23415 23451 23514 23541
24135 24153 24315 24351 24513 24531 25134 25143 25314 25341 25413 25431
31245 31254 31425 31452 31524 31542 32145 32154 32415 32451 32514 32541
34125 34152 34215 34251 34512 34521 35124 35142 35214 35241 35412 35421
41235 41253 41325 41352 41523 41532 42135 42153 42315 42351 42513 42531
43125 43152 43215 43251 43512 43521 45123 45132 45213 45231 45312 45321
51234 51243 51324 51342 51423 51432 52134 52143 52314 52341 52413 52431
53124 53142 53214 53241 53412 53421 54123 54132 54213 54231 54312 54321


python 有 itertools 排列组合包可以使用:

python的数学函数(1)-python组合函数模块itertools

http://shenguanpu.blogbus.com/logs/155452282.html

Python性能鸡汤

http://www.oschina.net/question/1579_45822

转载于:https://my.oschina.net/leejun2005/blog/63216

相关文章:

刚刚!我被产品小姐姐的笔记本深深吸引了....

今天我看到产品小姐姐的一个东西&#xff0c;我惊呆了&#xff0c;因为我好像看到了黑科技&#xff0c;事情是这个样子的....由于加班写代码&#xff0c;在比较疲劳的时候&#xff0c;就站起来随意的在办公室里走走&#xff0c;放松一下自己的脑神经。走到一个产品小姐姐身边&a…

【Qt】解决在linux上使用Qt的媒体模块(Qt += multimedia)缺少模块multimedia的问题

1、问题描述 在ubuntu上使用QAudioInput、QAudioOutput等音频相关的类时&#xff0c;报错。 2、解决方法 1&#xff09;在pro工程文件中添加了 Qt multimedia 2&#xff09;安装multimedia模组 sudo apt install libqt5multimedia* qtmultimedia5-*

设计模式之五 责任链模式(Chain of Responsibility)

2019独角兽企业重金招聘Python工程师标准>>> 一. 场景 相信我们都有过这样的经历&#xff1b; 我们去职能部门办理一个事情&#xff0c;先去了A部门&#xff0c;到了地方被告知这件事情由B部门处理&#xff1b; 当我们到了B部门的时候&#xff0c;又被告知这件事情已…

django 中文乱码或不识别

django是一个不错的WEB开源框架。今天测试&#xff0c;发现有些页面中文乱码&#xff0c;肯定是编码哪儿出了问题。 django配置要修改项目根目录的settings.py中的&#xff1a; TIME_ZONE America/Chicago LANGUAGE_CODE en-us 替换成&#xff1a; TIME_ZONE Asia/Shanghai …

【TX2】安装NVIDIA SDK Manager(JetPack 4.6)后,下载kernel和u-boot源码

1、先确认版本号 官网&#xff1a;L4T 32.6.1 is included as part of JetPack 4.6 2、下载源码 执行同步代码命令&#xff1a; ~/nvidia/nvidia_sdk/JetPack_4.6_Linux_JETSON_TX2_TARGETS/Linux_for_Tegra$ ./source_sync.sh 根据提示&#xff0c;输入1中查询到的版本号t…

忽略这一点,人工智能变人工智障!

作者 | The Economist译者 | 弯月&#xff0c;责编 | 伍杏玲出品 | CSDN&#xff08;ID&#xff1a;CSDNnews&#xff09;【编者按】当今社会&#xff0c;人工智能已进入我们生活的方方面面&#xff0c;很多人会担心算法的控制权过多&#xff0c;也有人担心数据有偏差的话&…

Loader 入门【Webpack Book 翻译】

原文链接&#xff1a;https://survivejs.com/webpack...翻译计划&#xff1a;https://segmentfault.com/a/11...附言&#xff1a;因为发现书中一些内容单独放出来会比较尴尬&#xff0c;所以会跳过部分章节&#xff0c;当然完整版会全部翻译&#xff0c;已经正在研究原版的网站…

backtrack X server 启动不了

本来安装好了啥事没有的。 自己硬想能不用打startx直接启动X server的 于是加了 if [ -z ... 的代码 到 ~/.xinitrc 结果X server就再也启动不了了 花了2个小时? 检索【inappropriate ioctl for device (25)】 有一篇文章提到了 xinitrc, 我才想起来好像是编辑了这个文件&…

【FFmpeg】windows下的库下载

1、官网 http://ffmpeg.org/ 2、点击下载,选择windows 左侧库下载,右侧源码下载 3、二进制库下载 官方网址:https://www.gyan.dev/ffmpeg/builds/#release-builds 4、gihub上的二进制镜像

19行关键代码,带你轻松入门PaddlePaddle单机训练

刚接触深度学习框架的同学可能会说新入手一个框架是不是会很难?NO&#xff0c;NO&#xff0c;NOPaddlePaddle的宗旨就是“easy to use&#xff01;”PaddlePaddle是百度自研的集深度学习框架、工具组件和服务平台为一体的技术领先、功能完备的开源深度学习平台&#xff0c;有全…

用WinForm/WPF代码来为.NET Core 3.0功能投票

我们在5月报道过微软希望在.NET Core 3.0上运行WinForms和WPF。为了实现这个目标&#xff0c;他们正在构建一个新工具&#xff0c;该工具将允许你投票以决定他们需要把哪些API移植到.NET Core。但是&#xff0c;这不是一次直接进行的投票&#xff0c;而是基于你的应用程序正在使…

【FFmpeg】RTSP、RTMP相关命令及开源项目

一、RTSP转RTMP 海康摄像头:抓取 rtsp 流然后转换成 rtmp 推流出去 主码流 ffmpeg -i “rtsp://[用户名]:[密码]@192.168.1.100/h265/ch1/main/av_stream” -f flv -r 25 -s 1920x1080 -an rtmp://localhost/live/a ffmpeg -i “rtsp://[用户名]:[密码]@192.168.1.100:554/h2…

Day13 python基础---内置函数1

一&#xff0c;内置函数&#xff1a; 1.什么是内置函数 就是python给你提供的&#xff0c;拿来直接用的函数&#xff0c;比如print,input等等&#xff0c;截止到python版本3.6.2,现在pyhton一共为我们提供了69个内置函数。 2.作用域相关 # 作用域相关 ****** # globals() :返回…

百度大脑开放日第三期:四大全新平台、两大场景方案助力开发者逐梦 AI

人工智能正走在从技术攻坚到嵌入大众生活的历史进程中&#xff0c;这离不开千万开发者的助力&#xff0c;但开发者也需要“被赋能”。5 月 30 日&#xff0c;第三期百度大脑开放日在深圳微漾国际创客空间如期举行&#xff0c;再一次向开发者、行业人士展现了百度大脑的 AI 技术…

SQuirreL SQL Client 使用记录

如果您的工作要求您在一天之中连接许多不同的数据库 &#xff08;oracle、DB2、mysql、postgresql、Sql Server等等&#xff09;&#xff0c;或者你经常需要在多个不同种类的数据库之间进行数导入导出。那么SQuirreL SQL Client 将会是比较理想的数据库客户端链接工具。 简单介…

使用Zabbix通过BMC管理口监控HP服务器

概述 本文的环境&#xff1a;Zabbix版本为3.4&#xff0c;一台Server&#xff0c;一台Porxy&#xff0c;一台agent。Porxy主动抓取agent的状态并sender到Server。 首先需要保证服务器的BMC口能够联网&#xff0c;并且拥有管理用户和密码&#xff0c;Proxy和agent能够保持联网。…

刚刚,百度宣布王海峰升任CTO

作者 | 夕颜、一一出品 | AI科技大本营&#xff08;ID:rgznai100&#xff09;导读&#xff1a;5 月 31 日&#xff0c;百度宣布&#xff0c;百度原高级副总裁王海峰升任百度 CTO&#xff0c;成为百度在组织大变革中一批“敢打硬仗”的代表人物得到晋升的典型。在百度人事动荡之…

【FFmpeg】结构体详解(一):AVCodec、AVCodecContext、AVCodecParserContext、AVFrame、AVFormatContext 、AVIOContext

FFmpeg结构体详解 一、FFmpeg中最关键的结构体之间的关系1、解协议(http,rtsp,rtmp,mms)2、解封装(flv,avi,rmvb,mp4)3、解码(h264,mpeg2,aac,mp3)4、存数据二、结构体详解1、AVCodec 是存储编解码器信息的结构体。1.1 enum AVMediaType type1.2 enum AVCodecID id1.3 co…

大一新生,你为何逃课?

昨晚不知在哪看到对现在大学生的描述&#xff0c;说现在的大学生30%的时间在应对无聊的思政课&#xff0c;30%的时间在忙着考英语等级&#xff0c;剩下40%的时间在忙着花前月下&#xff0c;“还忙不过来”&#xff0c;虽然不是全部大学生都这样&#xff0c;但也确实有不少的学生…

【FFmpeg】结构体详解(二):AVStream、AVPacket、AVOutputFormat

FFmpeg结构体详解 7、AVStream8、AVPacket9、AVOutputFormat7、AVStream AVStream 是存储每一个视频/音频流信息的结构体。 重要的变量如下所示: int index: 标识该视频/音频流 AVCodecContext *codec: 指向该视频/音频流的AVCodecContext(它们是一一对应的关系) AVR…

谷歌 Fuchsia 上手体验,将取代Android/win10

2019独角兽企业重金招聘Python工程师标准>>> 在手机市场领域&#xff0c;Google表现很抢眼&#xff0c;毫无疑问&#xff0c;Android 至今在移动操作系统的市场份额占据绝对领先地位&#xff0c;但是 Android 仍然存在不少问题&#xff0c;碎片化问题严重&#xff0…

美亚Kindle排名第一的Python 3入门书,火遍了整个编程圈

“大多数优秀的程序员从事编程工作&#xff0c;不是因为期望获得报酬或得到公众的称赞&#xff0c;而是因为编程是件有趣的事儿。”——林纳斯托瓦兹&#xff08;Linus Torvalds&#xff09;在美国亚马逊&#xff0c;有一本书的影响力超高的Python入门书&#xff0c;Kindle版本…

seo笔记——搜索显示

一、搜索显示的几个列表形式 1、经典搜索结果列表&#xff1a; 用户搜索时&#xff0c;出现的第一行都是网页的标题&#xff08;title&#xff09;&#xff0c;颜色醒目的部分是用户搜索的相关内容&#xff1b; 使用百度搜索则第二第三行是网页的说明内容&#xff08;Des…

【FFmpeg】函数详解(一)

FFmpeg函数详解 一、错误码相关1、AVERROR2、av_strerror3、其他错误码解释二、编解码1、获取编解码器2、申请、释放上下文环境3、打开编码器avcodec_open24、分配一个 AVFrame:av_frame_alloc5、av_frame_get_buffer6、avformat_alloc_output_context27、avformat_new_stream…

第5章 图像分类的数据集

第5章图像分类的数据集 在我们实际进入到代码编写阶段来构建分类器之前&#xff0c;我们首先回顾下在本书中用到的数据集。一些数据集可理想的获得大于95%的准确率&#xff0c;另一些则还在开放研究阶段&#xff0c;还有一些是图像分类竞赛的部分数据集。 现在就对这些数据集进…

一根烟上热搜,先让AI看看你的肺

作者 | 李翔&#xff0c;国内某互联网大厂AI民工&#xff0c;前携程酒店图像技术负责人&#xff0c;计算机视觉和深度学习重度爱好者&#xff0c;在ICCV和CVPR等会议上发表论文十余篇&#xff1b;马杰超&#xff0c;任职于某医学图像创业公司&#xff0c;医学图像AI领域资深从业…

mongodb主从设置,capped collections等常用命令集合

############### Mongodb 主 <> 从切换的时候要删除 ############## ############### use local ############################### ############## db.sources.remove() ############################### # 主#/data/mongodb-linux-x86_64-2.0.2/bin/mongod --por…

调侃吴恩达,Diss特斯拉,吐槽OpenAI…《AI寒冬将至》作者点评2019“AI小丑秀”...

作者 | Piekniewski编译 | 夕颜出品 | AI科技大本营&#xff08;ID: rgznai100&#xff09;导读&#xff1a;去年&#xff0c;一篇《AI寒冬将至》的文章在AI圈爆红&#xff0c;作者观点鲜明地指出AI领域出现泡沫&#xff0c;并预言AI寒冬将会到来&#xff0c;引起巨大争议。一年…

max_semi_space_size 设置值与实际值不一致的原因分析

问题由来 因为业务的需求&#xff0c;某 Node.js 性能平台用户需要调节新生代大小&#xff0c;Node.js 的启动参数里面的max_semi_space_size可以设置新生代堆空间的大小。 node --v8-options | grep max_semi -A 3 -B 2--min_semi_space_size (min size of a semi-space (in M…

【FFmpeg】函数详解(二)

FFmpeg函数详解 9、av_dump_format10、avio_open11、avformat_write_header12、avcodec_send_frame13、avcodec_receive_packet9、av_dump_format 原型: void av_dump_format(AVFormatContext *ic, int index, const char *url, int is_output);说明: 打印输入输出格式的详…