🟦采用数据结构与算法中的递归来实现汉诺塔
👀👀👀实现之前我们先来了解一下汉诺塔是什么
汉诺塔(Tower of Hanoi),又称河内塔,是一个源于印度古老传说的益智玩具。大梵天创造世界的时候做了三根金刚石柱子,在一根柱子上从下往上按照大小顺序摞着64片黄金圆盘。大梵天命令婆罗门把圆盘从下面开始按大小顺序重新摆放在另一根柱子上。并且规定,在小圆盘上不能放大圆盘,在三根柱子之间一次只能移动一个圆盘。
(注:用数字大小来代表圆盘的大小)
汉诺塔动图:
🔮通过移动我们发现,当圆盘数为n的时候,要移动第n个圆盘,我们要依赖前面n-1个圆盘移动
,这种情况适合用递归求解
以圆盘数(n)为3来分析
1️⃣过程一:圆盘1,2从柱子a借助柱子c移动到柱子b
2️⃣过程二:圆盘3从柱子a移动到柱子c