Hanoi(汉诺)塔问题
生活随笔
收集整理的這篇文章主要介紹了
Hanoi(汉诺)塔问题
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
問題描述:
Hanoi(漢諾)塔問題。古代有一個梵塔,塔內有3個座A,B,C,開始時A座有n個盤子,盤子大小不等,大的在下,小的在上。有一個老和尚想把這n個盤子,從A座移動到C座,但是每次只允許移動一個盤子,且在移動的過程中,3個座上都始終保持大盤在下,小盤在上。在移動的過程中,可以利用B座。
要求編程打印出移動的步驟~
問題分析:
當有1個盤子的時候,步驟:A->C;
當有2個盤子的時候,步驟:A->B? |? A->C? |? B->C;
當有3個盤子的時候,步驟:A->C? |? A->B? |? C->B? |? A->C? |? B->A? |? B->C? |? A->C;
分析了以上3個盤子的移動步驟,可以將移動n個盤子的步驟抽象為3個大的步驟;首先,將A上的上面的n-1個盤子都移動到B上,然后將B上的n-1個盤子移動到C上,然后將B上的n-1個盤子移動到C上。
示例代碼:
最后在上一個n=4的時候的截圖
晚安啦~
轉載于:https://www.cnblogs.com/zhezh/archive/2013/06/06/3773446.html
總結
以上是生活随笔為你收集整理的Hanoi(汉诺)塔问题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: FATAL ERROR: Could n
- 下一篇: 冬季,拿什么来温暖你的心情