奎克的藏经阁 · 原书印刷页

认知 人行为背后的思维与智能 · 第 89 页

PDF 物理页索引 100 · 第三章问题解决

书名
认知 人行为背后的思维与智能
作者
未记录
印刷页
89
PDF 物理页
100(从 0 开始)
章节
第三章问题解决
UUID
dde4e586-1def-4457-8ec5-0287b0b0511d
来源类型
original_book
页面 SHA-256
ce4cefc46ed9d68f94aef84ae6c50e51886e6d2cadc0d325304c208b5f4da9b2

这样我们只需考虑三个步骤。我们把所有的书(k本)由A移到C所采用的策略是:首先将去掉最大的一本书(k)后所留下的PYR(k—1)由 A移到 B;然后将 k由 A移到C;再将PYR(k-1)由B移到C:

要移动 PYR(k) 从A到C

要移动 PYR(k-1) 从 A 到 B

要移动 k 从A到 C

要移动PYR(k-1) 从B到C

这不是合法的解决问题的方法,因为规则要求我们一次只能移动一本书。为了遵守规则,必须一本一本地将PYR(k一1)从A移到B。我们仍可采用上述的方法,只不过是要一步步地移动。要把PYR(k—1)由A移到B,我们可以把PYR(k—2)由A移到C,再把k—1(这里k—1=4,即4本书中最大的一本)由A移到B,然后再把PYR(k—2)由C移到B。这时只需考虑移动三本书的问题了。为了把PYR(k-2)=PYR(3)由A移到C,只要把PYR(2)由A移到B,再把3由A移到C,然后把PYR(2)由B移到C。要把PYR(2)由A移到B,只要把PYR(1)=1由A移到C,再把2由A移到B,再把1由C移到B。这样,每一步我们都采用相同的策略。为了移动整个金字塔,我们先移动次大的金字塔;为了移动次大的金字塔,我们先移动比它再少一本书的金字塔,再移动次大的一本书,然后移动剩下的金字塔……这样下去,直至我们只需要移动一本书为止。这样我们就可以写出计算机的程序了。

第三章 问题解决

89