Ханойская башня: рекурсивный алгоритм
Хотя у меня нет проблем с пониманием рекурсии, я могуКажется, я оборачиваюсь рекурсивным решением проблемы Ханойской башни. Вот код изВикипедия:
procedure Hanoi(n: integer; source, dest, by: char);
Begin
if (n=1) then
writeln('Move the plate from ', source, ' to ', dest)
else begin
Hanoi(n-1, source, by, dest);
writeln('Move the plate from ', source, ' to ', dest);
Hanoi(n-1, by, dest, source);
end;
End;
Я понимаю базовый случай и концепцию разбиения проблемы на более мелкие части, пока вы не сможете переместить один диск. Тем не менее, я могуt выяснить, как два рекурсивных вызова в неосновном случае работают вместе. Возможно, кто-то может мне помочь? Благодарю.