1 / 15
文档名称:

数据结构课程报告汉诺塔.doc

格式:doc   大小:239KB   页数:15页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

数据结构课程报告汉诺塔.doc

上传人:tcrqax9z8 2017/4/1 文件大小:239 KB

下载得到文件列表

数据结构课程报告汉诺塔.doc

相关文档

文档介绍

文档介绍:1 目录 1课题需求.................................................................................................................... 3 2概要设计.................................................................................................................... 3 递归..................................................................................................................................... 3 非递归................................................................................................................................. 4 3详细设计和实现........................................................................................................ 4 4调试与测试.............................................................................................................. 13 启动窗口.......................................................................................................................... 13 递归实现.......................................................................................................................... 13 非递归实现...................................................................................................................... 15 退出.................................................................................................................................. 16 5致谢.......................................................................................................................... 17 6参考文献.................................................................................................................. 18 2 2 概要设计汉诺塔是一个经典的问题,曾被称为“世界末日问题”。此次程序设计全面讨论了解决此问题的方案,详细研究,了解,解决问题的算法设计,给出了具体算法, 最后由手工输入测试数,运用递归与非递归算法得出结果。 递归若只有一个圆盘的话直接将圆盘移至 C杆; 若为 N个圆盘的话将 N-1 个圆盘当作整体借助 C杆移至 B杆,将 N号盘移至 C杆,再借助 A杆重复上面的操作即可将圆盘移至 C杆。 非递归看出二叉树实现,假设‘A’一开始有 n个圆盘,前 n-1 个‘A’通过‘C’移到‘B’上看出左孩子,第 n 个移到‘C’看出根,将‘B’中n-1 通过‘A’移到‘C’看成右孩子,建立完全二叉树。主要借助二叉树的非递归中序遍历方法实现,利用栈堆来实现。 3 详细设计和实现 3 文件: #include<> //递归法解决汉诺塔问题 void HanNuoTaDiGui(int n,char a,char b,char