【发布时间】:2011-02-25 07:58:17
【问题描述】:
普罗维登斯塔是经典河内塔问题的变体。有四个钉子,分别表示为 A、B、C 和 D,以及不同大小的 N 个圆盘。最初,所有的磁盘都在钉子 A 上,从下到上以递减的大小堆叠。我们的目标是将所有磁盘转移到 peg D,规则是我们一次只能移动一个磁盘,并且不能将任何磁盘移动到较小的磁盘上。我们可以用递归的方法来解决这个问题:如果 N = 1,把这个圆盘直接移动到 peg D 上,我们就完成了。否则(N > 1),执行以下步骤:
(a) 递归地将 peg A 上的前 N-2 个磁盘转移到 peg B;
(b) 将第二大圆盘从挂钩 A 移到挂钩 C;
(c) 将最大的圆盘从钉 A 移到钉 D;
(d) 将第二大圆盘从挂钩 C 移到挂钩 D;
(e) 这一步填写
【问题讨论】:
-
他正在寻找步骤e。
-
您是否尝试过手动写出移动磁盘的步骤(可能只有 2 或 3 个),然后查看步骤 e 中会发生的情况是否有规律?跨度>
标签: recursion recurrence