魔方吧·中文魔方俱乐部

标题: 有研究汉诺塔的吗? [打印本页]

作者: 照耀    时间: 2009-5-9 15:19:45     标题: 有研究汉诺塔的吗?

汉诺塔据说是印度人发明的,市面上大都是八层,十层的。类似九连环,上上下下,反反复复。
作者: 604222420    时间: 2009-5-9 15:21:29

玩过FLASH……COUZI
作者: juventus66    时间: 2009-5-9 15:23:54

只看过一次
作者: 今日方知我是我    时间: 2009-5-9 15:24:00

貌似没太大技术含量,不太懂
作者: 啊生    时间: 2009-5-9 15:32:42

刚理解了下,应该不会太难,但在吧里好像没看到过,
作者: yq_118    时间: 2009-5-9 15:33:32

恩,没技术含量,不断的运用嵌套函数,好像C++的书里有讲
作者: sjont    时间: 2009-5-9 15:35:34

提示: 作者被禁止或删除 内容自动屏蔽
作者: 5200521    时间: 2009-5-9 15:40:54

这有什么好玩的,没技术含量
作者: 照耀    时间: 2009-5-9 15:56:48     标题: 没技术含量吗?

有人算过最少多少步可以移过来 ?
作者: kexin_xiao    时间: 2009-5-9 15:58:25

汉诺塔(又称河内塔)问题是印度的一个古老的传说。开天辟地的神勃拉玛在一个庙里留下了三根金刚石的棒,第一根上面套着64个圆的金片,最大的一个在底下,其余一个比一个小,依次叠上去,庙里的众僧不倦地把它们一个个地从这根棒搬到另一根棒上,规定可利用中间的一根棒作为帮助,但每次只能搬一个,而且大的不能放在小的上面。解答结果请自己运行计算,程序见尾部。面对庞大的数字(移动圆片的次数)18446744073709551615,看来,众僧们耗尽毕生精力也不可能完成金片的移动。
  后来,这个传说就演变为汉诺塔游戏:
  1.有三根杆子A,B,C。A杆上有若干碟子
  2.每次移动一块碟子,小的只能叠在大的上面
  3.把所有碟子从A杆全部移到C杆上
  经过研究发现,汉诺塔的破解很简单,就是按照移动规则向一个方向移动金片:
  如3阶汉诺塔的移动:A→C,A→B,C→B,A→C,B→A,B→C,A→C
  此外,汉诺塔问题也是程序设计中的经典递归问题。
作者: kexin_xiao    时间: 2009-5-9 15:59:10

http://www.xiaoyouxi.com/down/soft/714/2821.htm
这是个游戏的界面
作者: 豆钉    时间: 2009-5-9 16:11:25

原帖由 sjont 于 2009-5-9 15:35 发表
没有技术含量的东西~~方法是固定的~~~步数就是2的N次方减1~N是层数~~

以前玩了几关就算出最少步数的规律了
作者: 笑毅    时间: 2009-5-9 16:11:34

对啊,汉诺塔,太简单啦,就那玩法
作者: 魔鱼儿    时间: 2009-5-9 17:51:17

玩过,不难,和九连环性质一样.移动步数是成倍数增长的
作者: 夜雨听风    时间: 2009-5-9 18:07:51

太没技术含量   文曲星上经常玩
作者: amadeus    时间: 2009-5-19 20:51:04

移动的最少步数:2的N次方减1(N为盘子数)。
程序里用递归方法解决。




欢迎光临 魔方吧·中文魔方俱乐部 (http://www.mf8-china.com/) Powered by Discuz! X2