1 / 8
文档名称:

汉诺塔、数形结合及其他——卞强老师讲座中的故事.doc

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

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

分享

预览

汉诺塔、数形结合及其他——卞强老师讲座中的故事.doc

上传人:aluyuw1 2019/8/13 文件大小:219 KB

下载得到文件列表

汉诺塔、数形结合及其他——卞强老师讲座中的故事.doc

文档介绍

文档介绍:汉诺塔、数形结合及其他——卞强老师讲座中的故事汉诺塔、数形结合及其他——卞强老师讲座中的故事[2008-9-813:10:00|By:张弛有道] 0推荐上周四听了卞强老师的讲座,涉及到一些有趣的故事,现搜索整理其中一部分,供大家参考。 一、汉诺塔问题TowersofHanoi,汉诺塔(又称河内塔、梵塔)问题是印度的一个古老的传说。传说开天辟地的神勃拉玛(和中国的盘古差不多的神吧)在创造世界的时候,在一个庙里留下了三根金刚石的棒,第一根上面套着64个圆的金片,最大的一个在底下,其余一个比一个小,依次叠上去,这就是所谓的汉诺塔。不论白天黑夜,总有一个僧侣在移动这些金片,一次只移动一片,不管在哪根针上,小片必在大片上面。当所有的金片都从原来那根针上移到另外一概针上时(规定可利用第三根针作为帮助),世界就将在一声霹雳中消灭,梵塔、庙宇和众生都将同归于尽。不管这个传说的可信度有多大,如果考虑一下把64片金片,由一根针上移到另一根针上,并且始终保持上小下大的顺序,一共需要移到多少次。那么,不难发现:不管把哪一片移到另一根针上,移动的次数都要比移动上面一片增加一倍。这样,移动第1片只需1次,第2片需2次,第3次需4次……第64片需264次。全部次数为1+2+22+…+263=264-1=18446744073709551615次。假如每秒钟一次,共需多长时间呢?一年(地球绕太阳一周)的时间是365天5小时48分46秒,大约有31556926秒,计算表明移完这些金片需要5800多亿年,比地球寿命还要长,事实上,世界、梵塔、庙宇和众生都已经灰飞烟灭。看来,众僧们耗尽毕生精力也不可能完成金片的移动。后来,这个传说就演变为汉诺塔游戏:,B,C。,,汉诺塔问题也体现了数学中的经典递归问题。算法思路:,则把该金片从源移动到目标棒,结束。,则把前n-1个金片移动到辅助的棒,然后把自己移动到目标棒,最后再把前n-1个移动到目标棒。这个问题即可以这样解决:把前63个看作一个整体,移动到非目标针上,然后把第64个移动到目标针上,再把前63个移动到目标针上即可。但前63个如何移动呢?同样的,把前62个看作整体……这个递归方法也是编程时要经常用到的。汉诺塔故事大多数人可能没有听说过,或者虽有听过,但不知其详。不过与这个故事相似的,还有另外一个印度传说,这个故事对于多数人来说就一点也不陌生了:舍罕王打算奖赏国际象棋的发明人──宰相西萨·班·达依尔。国王问他想要什么,他对国王说:“陛下,请您在这张棋盘的第1个小格里赏给我一粒麦子,在第2个小格里给2粒,第3个小格给4粒,以后每一小格都比前一小格加一倍。请您把这样摆满棋盘上所有64格的麦粒,都赏给您的仆人吧!”国王觉得这个要求太容易满足了,就命令给他这些麦粒。当人们把一袋一袋的麦子搬来开始计数时,国王才发现:就是把全印度甚至全世界的麦粒全拿来,也满足不了那位宰相的要求。那么,宰相要求得到的麦粒到底有多少呢?总数为1+2+22+…+263=264-1,和移完汉诺塔的次数一样,但这个数字是天文数字,如果造一个高4米,宽10米的仓库来放这些麦子,那么它的长度就等于地球到太阳的距离的两倍。因为即使一粒麦子只