什么是汉诺塔
汉诺塔(Tower of Hanoi)源自一个印度古老传说:神庙里有三根钻石柱,其中一根套着 64 片中心穿孔的金盘,僧侣们日夜不停地按规则移动,传说移完之时世界就会消逝。规则只有两条:每次只能移动最上面的一个圆盘;任何时候小圆盘都不能放在大圆盘下面。
怎么玩
点「3 层 / 4 层 / 5 层」选择难度。开局所有圆盘按从大到小摞在第一根柱子上。点一下某根柱子,会选中它最顶端的圆盘(柱子高亮),再点目标柱子即可把圆盘移过去;如果目标柱子最上面的圆盘比它小,就是非法移动,系统会提示。目标是把整摞圆盘原样搬到最右边那根柱子。
最少步数
汉诺塔有严格的递推规律:n 层的最少移动次数是 2ⁿ−1。3 层要 7 步,4 层 15 步,5 层 31 步。它是理解递归思想最经典的模型——想把 n 层搬到 C,先把上面 n−1 层搬到 B,把最大盘搬到 C,再把 n−1 层从 B 搬到 C。完成后可以对照自己的步数,看看离最优解差多少。