汉诺塔的规律是什么?
1个回答
展开全部
汉诺塔规律总结口诀是单左双右,先小后大,一步两步,循环往复。
设3个柱子分别是甲,乙,丙,把3根柱子看成一个循环,也就是说,甲的右边是乙,乙的右边是丙,而丙的右边则回到甲,同理,甲的左边就是丙。简单点,记住丙的右边是甲,和甲的左边是丙就行了。盘子分别是盘1,盘2,盘3,盘4……盘1最小。按照“单左双右”的规律,先移动小的,也就是先移动盘1,再移动盘2,盘3,按顺序,把能移动的都移动一次,每次移动一步,如果不符合游戏规则,就移动两步,还是不符合的话,就找到盘1,重新按照“单左双右”的规则走,直到完成游戏。
汉诺塔公式:
现在有三根相邻的柱子,标号为A,B,C,A柱子上从下到上按金字塔状叠放着n个不同大小的圆盘,现在把所有盘子一个一个移动到柱子B上,并且每次移动同一根柱子上都不能出现大盘子在小盘子上方,请问至少需要多少次移动?
设移动次数为H(n)。首先我们肯定是把上面n-1个盘子移动到柱子C上,然后把最大的一块放在B上,最后把C上的所有盘子移动到B上,由此我们得出表达式:
H⑴=1。
H(n) = 2*H(n-1)+1 (n>1)。
那么我们很快就能得到H(n)的一般式:
H(n) = 2^n - 1 (n>0)。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询