Re: 河內塔之深入研究 - 拼圖

Table of Contents


以電腦程式來解的話,會用遞迴解法。

概念是n層的河內之塔,要從A柱移到B柱利用C柱。

分成三個階段
將n-1層的河內之塔,從A柱移到C柱利用B柱。
將第n層,從A柱移到B柱。
將n-1層的河內之塔,從C柱移到B柱利用A柱。

程式 大概是這樣:

procedure Hanoi(n: Integer; FromPole, ToPole, BufferPole: Tower);
begin
if n > 0 then
begin
Hanoi(n-1, FromPole, BufferPole, ToPole);
move(n, FromPole, ToPole);
Hanoi(n-1, BufferPole, ToPole, FromPole);
end;
end;

--

All Comments

Skylar DavisLinda avatarSkylar DavisLinda2007-06-07
嗯!大學時我曾經學過,只是現在年紀大了,有很多遺忘
今日能重溫,真的感謝!