- 10
- 0
- 约3.44万字
- 约 44页
- 2017-05-20 发布于北京
- 举报
C及C中你必须知道的23种算法
1.汉诺塔(递归算法)
说明
河内之塔(Towers of Hanoi)是法国人M.Claus(Lucas)于1883年从泰国带至法国的,河内为越战时北越的首都,即现在的胡志明市;1883年法国数学家Edouard Lucas曾提及这个故事,据说创世纪时Benares有一座波罗教塔,是由三支钻石棒(Pag)所支撑,开始时神在第一根棒上放置64个由上至下依由小至大排列的金盘(Disc),并命令僧侣将所有的金盘从第一根石棒移至第三根石棒,且搬运过程中遵守大盘子在小盘子之下的原则,若每日仅搬一个盘子,则当盘子全数搬运完毕之时,此塔将毁损,而也就是世界末日来临之时。
解法如果柱子标为ABC,要由A搬至C,在只有一个盘子时,就将它直接搬至C,当有两个盘
子,就将B当作辅助柱。如果盘数超过2个,将第三个以下的盘子遮起来,就很简单了,每次处理两个盘子,也就是:A-B、A -C、B-C这三个步骤,而被遮住的部份,其实就是进入程式的递回处理。事实上,若有n个盘子,则移动完毕所需之次数为2^n - 1,所以当盘数为64时,则所需次数为:264- 1 = 18446744073709551615为5.05390248594782e+16年,也就是约5000世纪,如果对这数字没什幺概念,就假设每秒钟搬一个盘子好了,也要约5850亿年左右。
#include stdio.h
void hanoi(int n
您可能关注的文档
- CAD命令和常见问题处理2014.10.20.doc
- CAD以和天正电气命令快捷键大全.doc
- CAD图中文字的注写和修改1.doc
- CAD和VISIO转换插入结合使用技巧.doc
- CAD和燕秀快捷命令集合.doc
- CAD图纸中图形长度面积及图块数量的查询.docx
- CAD图纸批量打印–发布.docx
- CAD国标字体及标注设置.doc
- CAD坐标自定义及使用技巧.doc
- CAD坐标和修改工具.doc
- 2027国家能源投资集团有限责任公司高校毕业生直招笔试备考题库及答案解析.docx
- 中小学生海西家园思政课程ppt模板.pptx
- 云南省玉溪市2026_2027学年高二语文上学期开学考试含解析.pdf
- 2026年度株洲市市直机关公开遴选公务员34人笔试模拟试题及答案解析.docx
- 2026年工业机器人领域小样本学习图像分类创新报告.docx
- 2026年国家能源集团河北公司人员招聘笔试模拟试题及答案详解.docx
- 云南省昭通市2027届高三地理上学期8月月考试题含解析.pdf
- 中学生物双子叶单子叶根系教学ppt模板.pptx
- 2026年自动驾驶测试场建设行业创新报告.docx
- 云南省玉溪市2025_2026学年高一生物下学期期末考试含解析.pdf
最近下载
- ISO140012026标准解读文件.pptx VIP
- ISO14001:2026全新培训教材.pptx
- ISO14001-2026与ISO14001-2015条款原文变化标识对照表(雷泽佳编制-2026A0).pdf VIP
- ISO14001-2026&ISO45001-2018内审知识测试试题及答案.pdf VIP
- ISO140012026&ISO450012018内审知识测试测试卷及答案.docx VIP
- 2026年广东省学法考试年度考试满分答案(考场三).doc VIP
- 2026年广东省学法考试年度考试满分答案(考场三2份答案).doc VIP
- 回流焊与波峰焊的区别贴片元件焊接23课件讲解.pptx
- 住院病案室病历遗失情况说明范文.docx
- 宣贯培训(2026年)《QCT 272-2025汽车用铝合金铸件技术条件》.pptx VIP
原创力文档

文档评论(0)