- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《新汉诺塔》课程设计
届课程设计
《汉诺塔》
课程设计说明书
学生姓名
学 号
所属学院 信息工程学院
专 业 计算机科学与技术
班 级
指导教师
教师职称 讲师
塔里木大学教务处制
目录
前言 1
1. 数据结构简介 1
2. 应用技术领域及范围 1
3.设计的原理、方法和主要内容 1
正文 2
1. 设计目的 2
2. 设计要求 2
3.需求分析 2
3.1 汉诺塔的由来: 2
3.2汉诺塔与宇宙寿命: 3
4. 问题分析: 4
5. 概要设计 5
5.1设计思想 5
5.2 实现方法 5
5.3 主要模块 5
5.4 模块关系 5
6. 详细设计 5
6.1 功能设计 5
6.2 算法分析 6
6.3 编写程序如下: 6
6.4 程序执行过程分析: 7
7. 调试分析: 7
8.小结 10
致谢 11
参考文献 11
前言
1. 数据结构简介
数据结构是计算机程序设计的重要理论设计基础,它不仅是计算机学科的核心课程,而且成为其他理工专业的热门选修课。数据结构是指相互之间存在一种或多种特定关系的数据元素的集合。通常情况下,精心选择的数据结构可以带来更高的运行或者存储效率。数据结构往往同高效的检索算法和索引技术有关。在计算机科学中,数据结构是一门研究非数值计算的程序设计问题中计算机的操作对象(数据元素)以及它们之间的关系和运算等的学科,而且确保经过这些运算后所得到的新结构仍然是原来的结构类型。“数据结构”在计算机科学中是一门综合性的专业基础课。数据结构是介于数学、计算机硬件和计算机软件三者之间的一门核心课程。数据结构这一门课的内容不仅是一般程序设计(特别是非数值性程序设计)的基础,而且是设计和实现编译程序、操作系统、数据库系统及其他系统程序的重要基础。
2. 应用技术领域及范围
汉诺塔的应用技术是来自于我们所学的数据知识和数学方面的学科,其中用到了数学递归,函数和数据的函数以及C语言等方面的知识。
汉诺塔的领域是在我的日常生活中的每一个细节中,反复的运用是我的数学知识在生活的体现,如做归一问题,循环问题,倒排问题,逻辑思维的相关问题等都要运用到我闷得汉诺塔原理。
汉诺塔的范围来自每一个知识的指导,和生活中的运用。在我们的世界不是一成不变的,而是时时刻刻都在发生着变化,但一切的变化都没有脱离我们这个世界的规则。
3.设计的原理、方法和主要内容
汉诺塔的设计原理是我们所学的数据结构与递归原理的应用,并且是在数据老师的指导下编写的源程序。得到了自己所设计的结果。汉诺塔的方法是把n个盘子从柱子1移到柱子3(利用柱子2),第一步,把n-1个盘子从柱子1移到柱子2(利用柱子3),第二步,把柱子1剩下的最大的盘子移到柱子3,第三步,把n-1个盘子从柱子2移到柱子3(利用柱子1)汉诺塔的由来汉诺塔是源自印度神话里的玩具
在印度,有这么一个古老的传说:在世界中心贝拿勒斯(在印度北部)的圣庙里,一块黄铜板上插着三根宝石针。印度教的主神梵天在创造世界的时候,在其中一根针上从下到上地穿好了由大到小的64片金片,这就是所谓的汉诺塔。不论白天黑夜,总有一个僧侣在按照下面的法则移动这些金片:一次只移动一片,不管在哪根针上,小片必须在大片上面。僧侣们预言,当所有的金片都从梵天穿好的那根针上移到另外一根针上时,世界就将在一声霹雳中消灭,而梵塔、庙宇和众生也都将同归于尽。
上帝创造世界的时候做了三根金刚石柱子,在一根柱子上从下往上安大小顺序摞着64片黄金圆盘。上帝命令婆罗门把圆盘从下面开始按大小顺序重新摆放在另一根柱子上。并且规定,在小圆盘上不能放大圆盘,在三根柱子之间一次只能移动一个圆盘。
有预言说,这件事完成时宇宙会在一瞬间闪电式毁灭。也有人相信婆罗门至今还在一刻不停地搬动着圆盘。汉诺塔与宇宙寿命 如果移动一个圆盘需要1秒钟的话,等到64个圆盘全部重新落在一起,宇宙被毁灭是什么时候呢?
让我们来考虑一下64个圆盘重新摞好需要移动多少次吧。1个的时候当然是1次,2个的时候是3次,3个的时候就用了7次......这实在是太累了
因此让我们逻辑性的思考一下吧。
4个的时候能够移动最大的4盘时如图所示。
到此为止用了7次。
接下来如下图时用1次,在上面再放上3个圆盘时还要用7次(把3个圆盘重新放在一起需要的次数)。
因此,4个的时候是
“3个圆盘重新摞在一起的次数”+1次+“3个圆盘重新摞在一起需要的次数”
=2x“3个圆盘重新摞在一起的次数”+1次
=15次。
那么,n个的时候是
2x“(n-1)个圆盘重新摞在一起的次数
您可能关注的文档
最近下载
- 捕歼战斗中地排教案设计.doc VIP
- 深圳希莱恒电解质说明书.doc VIP
- 开展体育领域突出问题专项整治工作情况汇报.docx VIP
- 学校安全生产风险分级管控和隐患排查治理双重预防体系建设实施指南.pdf VIP
- 双眼视异常分析临床处理2020.pptx VIP
- 排捕歼战斗连贯演练.docx VIP
- Illustrator教程Illustrator绘图技巧Illustrator经典实例Illustrator网格工具绘制逼真花瓣.pdf VIP
- 民企混改公司合作协议书10篇.docx VIP
- 如何免费申请QQ号申请qq号方法.docx VIP
- Illustrator进阶技巧.pdf VIP
文档评论(0)