〜 教材サンプル ”演習問題29 再帰呼び出し(ハノイの塔)” 〜
(解答欄)
※ハノイの塔とは・・・「3本の杭a,b,cがあります。杭aに中央には穴の開いたn枚の円板が大きい順に積まれています。これを1枚ずつ移動させて杭bへ移す手順を示しなさい。ただし、移動の途中で円板の大小が逆に詰まれてはいけません。また、杭cは作業用に使用してもかまいません。」 (ヒント)
n枚の板をa → bに移す再帰手続きは次のようになります。 @上の(n−1)枚の板をa → cに移す手順を求める(再帰呼び出し)。 今、n枚の板をa → bに移す手続きを hanoi(n,a,b,c) とすると、n−1枚の板をa → cに移す呼び出しは、 hanoi(n−1,a,c,b) n−1枚の板をc → bに移す呼び出しは、 hanoi(n−1,c,b,a) となります。 |
|
|
光明池駅前校、和泉中央校、 泉ヶ丘駅前校 | |
TEL.0725-57-1451/FAX.0725-57-5206 |
|