《外文翻译--《具体数学》,1.3,约瑟夫环问题(适用于外文翻译+中英文对照)》-毕业论文.docVIP

《外文翻译--《具体数学》,1.3,约瑟夫环问题(适用于外文翻译+中英文对照)》-毕业论文.doc

  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文档。上传文档
查看更多
w PAGE Concrete Mathematics R. L. Graham, D. E. Knuth, O. Patashnik 《Concrete Mathematics》,1.3 THE JOSEPHUS PROBLEM R. L. Graham, D. E. Knuth, O. Patashnik Sixth printing, Printed in the United States of America 1989 by Addison-Wesley Publishing Company,Reference 1-4 pages 具体数学 R.L.格雷厄姆,D.E.克努特,O.帕塔希尼克 《具体数学》,1.3,约瑟夫环问题 R.L.格雷厄姆,D.E.克努特,O.帕塔希尼克 第一版第六次印刷于美国, 韦斯利出版公司,1989年,引用8-16页 递归问题 本章研究三个样本问题。这三个样本问题给出了递归问题的感性知识。它们有两个共同的特点:它们都是数学家们一直反复地研究的问题;它们的解都用了递归的概念,按递归概念,每个问题的解都依赖于相同问题的若干较小场合的解。 约瑟夫环问题 我们最后一个例子是一个以Flavius Josephus命名的古老的问题的变形,他是第一世纪一个著名的历史学家。据传说,如果没有Josephus的数学天赋,他就不可能活下来而成为著名的学者。在犹太|罗马战争中,他是被罗马人困在一个山洞中的41个犹太叛军之一,这些叛军宁死不屈,决定在罗马人俘虏他们之前自杀,他们站成一个圈,从一开始,依次杀掉编号是三的倍数的人,直到一个人也不剩。但是在这些叛军中的Josephus和他没有被告发的同伴觉得这么做毫无意义,所以他快速的计算出他和他的朋友应该站在这个恶毒的圆圈的哪个位置。在我们的变形了的问题中,我们以n个人开始,从1到n编号围成一个圈,我们每次消灭第二个人直到只剩下一个人。例如,这里我们以设n= 10做开始。 这时的消灭顺序是2, 4, 6, 8, 10, 3, 7, 1, 9。所以编号是5的人活下来了。这个问题:就是定位最后活下来的人的数字J(n)。我们刚刚看到的是J(10) = 5的情况。我们可能会推测当n是偶数的时候J(n) =n=2;而且当n= 2的时候结论验证了假设:J(2) = 1。但是其他一些数字比较小的情况告诉我们|当n= 4和n= 6的时候这个假设错误了。 于是我们回到了起点;让我们试着来个更好的猜测。呃...,J(n)看起来总是奇数。而且事实上,这个现象的原因是:围成的圆圈的第一轮消灭了所有的编号是偶数的人。之后我们又回到了与我们开始的时候类似的情形,除了人数只有原来一半的人,而且他们的编号改变了。 所以,让我们假设最开始有2n个人,在第一轮结束后,我们剩下 而且3将是下一个出局的。这个就像是以n个人开始的情况,除了每个人的编号变为两倍减一。那就是, J(2n) = 2J(n)-1; 当n ≥1: 我们现在可以快速的计算一下当n比较大的时候的值。例如,我们知道J(10) = 5,所以 J(20) = 2J(10)-1 = 2*5-1 = 9: 同样可知J(40) = 17,进一步我们可以推算出 J(5*2M)=2M+1 +1 但是,奇数的情况呢?当有2n+ 1个人的时候,编号是1的人会在第2n个人出局后紧接着出局,然后,我们剩下 我们再次获得了形如n个人的情况,但是这次他们的编号是两倍加一。所以 J(2n+ 1) = 2J(n) + 1; 当n ≥1; 与等式J(1) = 1组合,我们得到一个定义了J的所有取值的递推式: J(1) = 1; J(2n) = 2J(n)-1; 当n ≥1; J(2n+ 1) = 2J(n) + 1; 当n ≥1; 这个公式不是从J(n-1)计算J(n),这个递归式更加的“高效”,因为他以2为因子使n递减了一半或更多。我们可以计算J(1;000;000),如上所示,我们只要应用19次(1)式。但是,我们依旧要寻找一个闭合形式的公式,因为那样会更加快速和更有意义。总之,这是非常重要的事情。 用我们的递归式,我们可以很快地建造一张较小取值的表。可能我们可以通过这张表看出模式并猜出结果。 瞧!看起来我们可以以2的幂分组(通过表中的竖线);在每组的开始,J(n)总是1,而且在一组内以2递增。所以,如果我们把n写成形如n=2M+J的公式,当2M是不超过n的2的最大次幂,且l是剩余的数。这样我们的递归式的解法看起来是 J(2M+L)=2L+1 当m≥0且0≤L2M (2) (注意如果2M≥n2M+1, 那么余下的数l =n-2M 满足不等式0≤L2M+1-2M=2M.) 我们现在必须证明(2)式。如我们以前使用的数学归纳法一样,但是这次我们的数

您可能关注的文档

文档评论(0)

沙卡娜 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档