漢諾塔問題 hanoi(遞迴)

2021-08-08 23:27:48 字數 468 閱讀 9841

//漢諾塔問題-hanoi 

//現有abc三個柱子,a中有n個盤(上小下大),移動到c上,要求全程上小下大

//演算法:遞迴,把1~n-1個盤當作乙個整體 

#include//函式宣告

//函式功能:把n個盤 從a 借助b,移到c 

hanoi(int n,char x,char y,char z);

//函式功能:把乙個盤子x->y 

move(char x,char y);

int main()

}getchar();

return 0; } 

//函式原型

move(char x,char y)//move()放在hanoi後沒毛病,宣告也放hanoi()後也·沒毛病   

hanoi(int n,char a,char b,char c)

}//goto a1

漢諾塔問題(Hanoi塔)

1.將from柱最上面的movesum 1個圓盤移動到by柱 借助to柱 2.將from柱上剩下的那1個圓盤直接移動到to柱 3.將by柱上的movesum 1個圓盤移動到to柱 借助from柱 int sumofplates 4 總的盤子數目 int sum 3 初始時各柱子上盤子數目 enum ...

漢諾塔問題 Hanoi

描述 一 漢諾塔問題 問 如何移?最少要移動多少次?漢諾塔示意圖如下 三個盤的移動 二 故事由來 法國數學家愛德華 盧卡斯曾編寫過乙個印度的古老傳說 在世界中心貝拿勒斯 在印度北部 的聖廟裡,一塊黃銅板上插著三根寶石針。印度教的主神梵天在創造世界的時候,在其中一根針上從下到上地穿好了由大到小的64片...

C 遞迴解決漢諾塔問題 Hanoi

using system using system.collections.generic using system.linq using system.text namespace myexample hanoi class hanoicalculator ulong totalsteps ste...