久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

怎么用python寫漢諾塔程序

144次閱讀
沒有評論

共計 611 個字符,預計需要花費 2 分鐘才能閱讀完成。

下面是使用遞歸的方法來編寫漢諾塔程序的 Python 代碼:

def hanoi(n, source, target, auxiliary):
    if n > 0:
        # 將 n-1 個盤子從源柱子移動到輔助柱子 
        hanoi(n-1, source, auxiliary, target)
        
        # 將第 n 個盤子從源柱子移動到目標柱子 
        print(f"Move disk {n} from {source} to {target}")
        
        # 將 n-1 個盤子從輔助柱子移動到目標柱子 
        hanoi(n-1, auxiliary, target, source)


# 測試 
n = 3  # 盤子的數(shù)量 
hanoi(n, 'A', 'C', 'B')

請注意,此代碼僅打印出了每一步的移動,如果你希望將移動的步驟保存在列表中以便進一步操作,你可以將 print 語句替換為一個列表的追加操作。

這段代碼中的 hanoi 函數(shù)采用了四個參數(shù): n 表示要移動的盤子數(shù)量,source 表示源柱子,target 表示目標柱子,auxiliary 表示輔助柱子。函數(shù)首先將 n-1 個盤子從源柱子移動到輔助柱子,然后將第 n 個盤子從源柱子移動到目標柱子,最后再將 n-1 個盤子從輔助柱子移動到目標柱子。這個過程通過遞歸調(diào)用函數(shù)來實現(xiàn)。

在測試部分,我們將一個包含 3 個盤子的漢諾塔問題的解傳遞給 hanoi 函數(shù),并將源柱子命名為‘A’,目標柱子命名為‘C’,輔助柱子命名為‘B’。

丸趣 TV 網(wǎng) – 提供最優(yōu)質(zhì)的資源集合!

正文完
 
丸趣
版權(quán)聲明:本站原創(chuàng)文章,由 丸趣 2023-12-13發(fā)表,共計611字。
轉(zhuǎn)載說明:除特殊說明外本站除技術(shù)相關(guān)以外文章皆由網(wǎng)絡搜集發(fā)布,轉(zhuǎn)載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 泉州市| 玉山县| 尼玛县| 寻乌县| 望谟县| 英吉沙县| 大方县| 恩平市| 塔河县| 长沙市| 凉城县| 吉水县| 惠安县| 新昌县| 牙克石市| 泸州市| 南昌县| 贵德县| 蚌埠市| 新丰县| 乌审旗| 八宿县| 柳河县| 禹城市| 神农架林区| 内江市| 将乐县| 赤壁市| 象山县| 祁阳县| 峨眉山市| 海原县| 金塔县| 疏附县| 水城县| 图木舒克市| 彭阳县| 阿克| 汤阴县| 四会市| 前郭尔|