課後習題4.9 Hanoi(漢諾)塔問題。這是一個經典的數學問題:古代有一個梵塔,塔內有3個座A,B,C,開始時A座上有64個盤子,盤子大小不等,大的在下,小的在上(見圖4.16)。有一個老和尚想把這
課後習題4.9 Hanoi(漢諾)塔問題。這是一個經典的數學問題:古代有一個梵塔,塔內有3個座A,B,C,開始時A座上有64個盤子,盤子大小不等,大的在下,小的在上(見圖4.16)。有一個老和尚想把這64個盤子從A座移到C座,但每次只允許移動一個盤,且在移動過程中3個座上都始終保持大盤在下,小盤在上。在移動過程中可以利用B座,要求程式設計序列印移出移動的步驟。
#include <iostream>
using namespace std;
int main()
{
void hanoi(int n, char one, char two, char three);
int m;
cout << "input the number of diskes:";
cin >> m;
cout << "The steps of moving " << m << " disks:" << endl;
hanoi(m, 'A', 'B', 'C');
return 0;
}
void hanoi(int n, char one, char two, char three)
//將n個盤從one座藉助two座,移到three座
{
void move(char x, char y);
if (n == 1)
move(one, three);
else
{
hanoi(n - 1, one, three, two);
move(one, three);
hanoi(n - 1, two, one, three);
}
}
void move(char x, char y)
{
cout << x << "-->" << y << endl;
}
相關文章
- 小知識系列(3):Hanoi塔(漢諾塔,河內塔)
- 雙色Hanoi塔問題
- 遞迴求解漢諾塔問題遞迴
- Python實現:漢諾塔問題Python
- 奇怪的漢諾塔 - 題解
- python3:遞迴解漢諾塔問題Python遞迴
- 第二章 :查詢與排序-------遞迴經典問題——漢諾塔問題排序遞迴
- 資料庫安全問題?這裡有10個最常見的資料庫
- 有沒有小夥伴來風暴一下這個題
- 一個小問題
- 有關webscraper的問題,看這個就夠了Web
- 盤點一個Pandas實戰需求的問題
- 請教一個讓我這個菜雞不解的問題
- 70個經典面試問題,有備無患~面試
- 一個nvcc編譯的小問題編譯
- pl/sql developer的一個小問題SQLDeveloper
- 【基礎】EM 還是 REM?這是一個問題!REM
- 請問一個 authorize的問題
- 有關 socialiteproviders 存在的幾個問題IDE
- linux 最後一個沒有依賴問題的搜狗輸入法Linux
- 一個極限小問題
- 記錄一個小問題
- 一次線上OOM問題的個人覆盤OOM
- 最近思考的一個問題
- 一個有趣的鎖問題
- MySQL:一個特殊的問題MySql
- 一個有趣的this指向問題
- 一個詭異的"可見性"問題
- 剛剛下載一個最新的包,安裝有問題
- Redis學習的幾個小問題Redis
- 遊戲,一個有樂趣的、解決問題的過程遊戲
- 手搓一個兔子問題(分享一個C語言問題,持續更新…)C語言
- 思考一個問題
- 一個沉重的問題:軟體開發到底還有價值嗎?
- 【JAVA習題一】古典問題:有一對兔子,從出生後第3個月起每個月都生一對兔子,小兔子長到第三個月後每個月又生一 對兔子,假如兔子都不死,問每個月的兔子總數為多少?Java
- 漢羅塔問題 java實現Java
- HDU 1671 字典樹(判斷是否有一個串是另一個串的子串)。
- 一名大專同學的四個問題