有甲乙丙三个木柱,甲柱上套着五个中间有孔大小不同的圆盘,大的在下,小的在上。现要把甲柱上的圆盘全部

到乙柱上,规定每次只能把装在最上面的一个圆盘从一根木柱上移到另一根上,但大盘不能放在小盘上面。问:至少要移多少次?
有规律吗?

汉诺塔:汉诺塔(又称河内塔)问题是源于印度一个古老传说的益智玩具。上帝创造世界的时候做了三根金刚石柱子,在一根柱子上从下往上安大小顺序摞着64片黄金圆盘。上帝命令婆罗门把圆盘从下面开始按大小顺序重新摆放在另一根柱子上。并且规定,在小圆盘上不能放大圆盘,在三根柱子之间一次只能移动一个圆盘。

假设木柱上有1个圆盘,只需移动1次

假设木柱上有2个圆盘,需移动3次(甲-丙,甲-乙,丙-乙)

假设木柱上有3个圆盘,需移动7次

甲-乙

甲-丙

乙-丙

甲-乙

丙-甲

丙-乙

甲-乙

假设木柱上有n个圆盘

实际上是有规律的

由一根针上移到另一根针上,并且始终保持上小下大的顺序。需要递归的方法,移动次数是f(n).显然f(1)=1,f(2)=3,f(3)=7,且f(k+1)=2*f(k)+1。此后不难证明f(n)=2^n-1。

那么f(5)=2^5-1=32-1=31次

参考资料:http://baike.baidu.com/view/191666.htm

温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-11-24
29
规律,不知道,有时间我想想看本回答被网友采纳
相似回答