汉诺塔3层、4层、5层通关步骤图解:每一步走法表+两句口诀
汉诺塔3层7步、4层15步、5层31步,每一步怎么走都列成了表;再配两句口诀,不用背表也能走出最少步数。走法表由本站求解程序生成,并在游戏里逐步实测通关。
在线玩汉诺塔
先说结论: 3 层最少 7 步、4 层 15 步、5 层 31 步。只要记住两句口诀——单数步永远动最小的盘,并且一直朝同一个方向转圈;双数步只有一种走法——不用背表也能每次都走出最少步数。下面把三种层数的每一步都列成了表,可以打开 汉诺塔在线游戏 对照着走。
本文的走法表由本站汉诺塔的求解代码直接生成,并在游戏里逐步点击实测:3、4、5 层都以最少步数通关(游戏显示“完美!你用了最少步数!”)。
规则 30 秒看懂
三根柱子,最左边那根叠着一摞大小不同的圆盘。目标是把整摞盘搬到最右边那根柱子上,规则只有两条:
- 每次只能移动某根柱子最上面的一个盘;
- 大盘不能压在小盘上。
为了方便描述,下文把三根柱子叫作 A(起点柱)、B(中转柱)、C(目标柱),对应游戏里从左到右的 1、2、3 号柱,和游戏内“玩法图解”的叫法一致。

两句口诀:不背表也能走对
口诀一:单数步(第 1、3、5…步)永远动最小的盘,而且方向固定。
- 总层数是单数(3 层、5 层):最小盘按 A → C → B → A 的顺序转圈;
- 总层数是双数(4 层、6 层):最小盘按 A → B → C → A 的顺序转圈。
所以第一步怎么走,只看层数:3 层、5 层第一步把最小盘直接放到 C,4 层第一步先放到 B。第一步走反了,后面就再也回不到最少步数了。
口诀二:双数步不动最小盘,这时只剩一种合法走法。
最小盘占着一根柱子,剩下两根柱子之间只能互相挪一个盘:哪边的顶盘更小,就把它挪到另一边(如果一边是空柱,就挪到空柱上)。不用想,只有这一种可能。
这两句我们用程序把 3、4、5 层的最优解逐步检查过:最小盘恰好在每一个单数步移动,方向也始终不变。
3 层:7 步走法表
| 步 | 盘 | 走法 |
|---|---|---|
| 1 | 1(最小) | A → C |
| 2 | 2 | A → B |
| 3 | 1(最小) | C → B |
| 4 | 3 | A → C |
| 5 | 1(最小) | B → A |
| 6 | 2 | B → C |
| 7 | 1(最小) | A → C |
走完第 3 步时,两个小盘都已经叠在 B 上,A 只剩最大盘、C 是空的——这正是“先把上面的盘挪开,再搬最大盘”的时刻。第 4 步把 3 号盘放进 C,后面 3 步再把两个小盘叠回去。


4 层:15 步走法表
4 层是双数,最小盘的方向要换成 A → B → C。
| 步 | 盘 | 走法 |
|---|---|---|
| 1 | 1(最小) | A → B |
| 2 | 2 | A → C |
| 3 | 1(最小) | B → C |
| 4 | 3 | A → B |
| 5 | 1(最小) | C → A |
| 6 | 2 | C → B |
| 7 | 1(最小) | A → B |
| 8 | 4 | A → C |
| 9 | 1(最小) | B → C |
| 10 | 2 | B → A |
| 11 | 1(最小) | C → A |
| 12 | 3 | B → C |
| 13 | 1(最小) | A → B |
| 14 | 2 | A → C |
| 15 | 1(最小) | B → C |
关键在第 8 步:前 7 步其实就是“把 3 层整体从 A 搬到 B”,第 8 步把最大的 4 号盘放进 C,后 7 步再把 3 层从 B 搬到 C。下图是手机上走到第 8 步后的样子。

5 层:31 步走法表
5 层又是单数,最小盘回到 A → C → B 的方向。31 步看起来多,其实是“4 层搬一次(15 步)+ 最大盘 1 步 + 4 层再搬一次(15 步)”。
| 步 | 盘 | 走法 |
|---|---|---|
| 1 | 1(最小) | A → C |
| 2 | 2 | A → B |
| 3 | 1(最小) | C → B |
| 4 | 3 | A → C |
| 5 | 1(最小) | B → A |
| 6 | 2 | B → C |
| 7 | 1(最小) | A → C |
| 8 | 4 | A → B |
| 9 | 1(最小) | C → B |
| 10 | 2 | C → A |
| 11 | 1(最小) | B → A |
| 12 | 3 | C → B |
| 13 | 1(最小) | A → C |
| 14 | 2 | A → B |
| 15 | 1(最小) | C → B |
| 16 | 5 | A → C |
| 17 | 1(最小) | B → A |
| 18 | 2 | B → C |
| 19 | 1(最小) | A → C |
| 20 | 3 | B → A |
| 21 | 1(最小) | C → B |
| 22 | 2 | C → A |
| 23 | 1(最小) | B → A |
| 24 | 4 | B → C |
| 25 | 1(最小) | A → C |
| 26 | 2 | A → B |
| 27 | 1(最小) | C → B |
| 28 | 3 | A → C |
| 29 | 1(最小) | B → A |
| 30 | 2 | B → C |
| 31 | 1(最小) | A → C |
走到一半不确定下一步时,可以按 H 键(或点“提示”):游戏会高亮当前最优一步的起点柱和目标柱。下图是 5 层走完 4 步后按提示的效果,高亮的正是表里的第 5 步——最小盘从 B 回到 A。

为什么 n 层最少要 2ⁿ−1 步
把 n 层搬到 C,必须先把上面 n−1 层整体挪到 B,最大盘才能动;最大盘到位后,再把 n−1 层从 B 搬到 C。所以步数满足“n 层 = 2 ×(n−1 层)+ 1”,从 1 层 1 步算起,就是 3 层 7 步、4 层 15 步、5 层 31 步,一般地是 2ⁿ−1 步。公式的完整推导和递归思路,可以看这篇:汉诺塔最少步数与递归公式 2ⁿ−1 详解。
| 层数 | 最少步数 |
|---|---|
| 3 | 7 |
| 4 | 15 |
| 5 | 31 |
| 6 | 63 |
| 7 | 127 |
| 8 | 255 |
| 10 | 1023 |
在本站游戏里练习的小技巧
- 操作:点一下柱子拿起顶盘,再点目标柱放下;也可以用键盘 1/2/3 选柱,或 ←→ 加回车。
- 走错了不用重来:Z 撤销、Y 重做。
- 卡住了:H 显示下一步最优走法;D(“看解法”)从当前局面自动演示剩下的最优解,演示中点任意柱子可以停下。
- 层数是一层层解锁的:通关当前层数后才解锁下一层,最高 10 层。每层的最佳步数和用时保存在本机浏览器里。
- 每日挑战:7 层、限定步数内完成(最优解是 127 步),适合把口诀练熟以后试试。
常见问题
4 层第一步放到 C 可以吗? 能放,但之后至少要多走几步才能补回来。双数层第一步应该放到 B。
怎么知道自己走没走偏? 看游戏上方的“步数”和“最少步数”:通关时两者相等就是完美解;中途可以按 H 对照提示。
6 层、7 层也能用这两句口诀吗? 能。6 层是双数,最小盘按 A → B → C 转;7 层是单数,按 A → C → B 转。
马上试试: 打开 汉诺塔在线游戏,从 3 层开始照着表走一遍,再关掉表只用口诀走 4 层。