Re: [商管] [資結]-河內塔
※ 引述《fairwarning (一輪明月與藍夜!!)》之銘言:
: 請問河內塔的recursive algorithm
void Hanoi (n:disc,A,B,C:peg) 目標:把n個盤子從A柱般到C柱 搬動時大盤
要在小盤下方
: {
: if(n==1)
{
move disc from A to C //只有一個盤子時 直接搬到C柱
: }
: else //大於1個盤子 需遞迴搬動盤子
: {
Hanoi(n-1,A,C,B); //先把放在A柱前面n-1個盤子搬到B柱 並且以C當作為搬動時
//可以當作暫時放置盤子的地方
move the disc n from A to C; //最後一個在A的最大盤子 直接搬到C柱
Hanoi(n-1,B,A,C); //把放在B柱n-1個盤子搬到C柱 並且以A當作為搬動時
//可以當作暫時放置盤子的地方
: }
: }
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.127.208.156
※ 編輯: yesa315 來自: 140.127.208.156 (08/24 22:06)
討論串 (同標題文章)