算法之序数法排列.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
算法之序数法排列

算法之序数法排列 1. 序数法 我们通过一个具体的例题说明思想方法. 例 得到301 19/2=9….1 9/3=3….0 3/4=0….3 就得到301,因为301是1234的排列中有4*3*2*1中的第19个排序列,总共24种 例 1234中第7个排序列是什么? 7/2=3….1 3/3=1….0 1/4=0….1 这样第7位是1010了 在例 12345中第7个排序列是什么? 7/2=3….1 3/3=1….0 1/4=0….1 0/5=0….0 排序列就是0101了 例 (1) 4213 ((301) 4后面比4小的数的个数a3=3; 3后面比3小的数的个数a2=0; 2后面比2小的数的个数a1=1. (2) (301) ( 4213 由a3=3知1,2,3都在4的后面; 由a2=0知1,2都在3前面; 由a1=1知1在2后面. (3) (4213)((a3a2a1)=(301). 利用序列得到相应排列是关键, 可以设想为给n个格子中填写 比如其中的序列(221)所对应的排列: 1,2,…,n. 如上面的例题: 先由a3=2决定4的位置 再由a2=2决定3的位置 再由a1=1决定2的位置 通过此方法编写C++算法: #include iostream.h int main(void) { l1: int n; cout请输入数字1至无穷大endl; cinn; int *a=new int[n]; int nj=1;//得到n的阶层 int *b=new int[n];//输出n阶层对应项 int *c=new int[n];//得到商 int *d=new int[n];//输出排列 int jilu=0;//记录初始化 int kong=0;//计算为1的位置 for (int i=0 ;in;i++) { a[i]=i+1; //couta[i]endl; } for (int j=0 ;jn;j++) { nj=nj*(j+1); //coutnjendl; } for (int l=0;lnj;l++) { for (int i=1;in;i++) { if (i==1) { b[i]=l%2; c[i]=l/2; } else { b[i]=c[i-1]%(i+1); c[i]=c[i-1]/(i+1); } //coutb[i] ; } for(int j=0;jn;j++) { d[j]=1; } for (int k=n-1;k0;k--) { coutb[k] ; for(int i=0;in;i++) { if(d[i]==1) { ++kong;//能使用kong++ } } //coutkong ; for(int j=0;jn;j++) { if(d[j]==1) { if (jilu==b[k]) { d[j]=a[kong-1];//必须使用kong-1 jilu=0; break; } else { ++jilu; } } } kong=0; } cout--; for(int l=0;ln;l++) { coutd[l] ; } coutendl; } goto l1; } 运行结果: 1 2 4 3

文档评论(0)

didala + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档