av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

python求解漢諾塔游戲

瀏覽:93日期:2022-07-18 10:20:52

本文實例為大家分享了python求解漢諾塔游戲的具體代碼,供大家參考,具體內容如下

一、問題定義

百度百科定義:漢諾塔(又稱河內塔)問題是源于印度一個古老傳說的益智玩具。據說大梵天創造世界的時候做了三根金剛石柱子,在一根柱子上從下往上按照從小到大順序摞著64片黃金圓盤。大梵天命令婆羅門借助其中一根柱子,把64片黃金圓盤重新擺放到第三個根柱子上。并且規定,在小黃金圓盤上不能放大的黃金圓盤,在三根柱子之間一次只能移動一個圓盤。

例如,如果黃金圓盤只有3片,則為了滿足游戲規則,那么必須按照如下圖所示的8個步驟完成:

python求解漢諾塔游戲

二、代碼實現

# 將n個盤子借助y柱從x柱移動到z柱def hanoi(n, x, y, z): count = 0 if n == 1: # 遞歸出口 print(x, ’ --> ’, z) return 1 else: # 將前n - 1個盤子借助z柱從x柱移動到y柱上 count += hanoi(n - 1, x, z, y) # 遞歸調用 # 將最底下的1個盤子從x柱移動到z柱上 count += hanoi(1, x, y, z) # 將n - 1個盤子借助x柱從y柱移動到z柱上 count += hanoi(n - 1, y, x, z) # 遞歸調用 return countdef main(): hanoi_level = input('請輸入漢諾塔層數:') print('總共移動次數為%d' % hanoi(int(hanoi_level), ’X’, ’Y’, ’Z’))if __name__ == ’__main__’: main()

當黃金圓盤為4層時,代碼的輸出結果為:

請輸入漢諾塔層數:4X --> YX --> ZY --> ZX --> YZ --> XZ --> YX --> YX --> ZY --> ZY --> XZ --> XY --> ZX --> YX --> ZY --> Z總共移動次數為15

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 午夜一级片 | 日本高潮视频 | 国产青青操 | 国产一区二区三区在线看 | 欧美国产在线视频 | 国产视频www | 国产午夜激情 | 日韩欧美精品一区 | 亚洲777 | 91午夜理伦私人影院 | 日韩视频在线免费观看 | 国产又色又爽又黄又免费 | 国产精品婷婷 | 色婷婷国产 | 亚洲免费精品 | 五月婷婷 | 97人人干 | 午夜你懂的 | 手机在线看片1024 | 精品一区二区视频 | 亚洲激情一区 | 亚洲福利专区 | 午夜av在线播放 | 欧美亚洲天堂 | a级毛毛片 | 天天摸夜夜操 | 国产精品日韩在线 | 超碰免费97 | 成年人小视频 | 日本一级一片免费视频 | 女子spa高潮呻吟抽搐 | 免费av网址在线观看 | 国产第一福利 | 欧美一级淫片免费视频黄 | 18在线观看网站 | 一区二区国产精品 | 69视频网站 | 久久久久久久久国产 | 亚洲我射av | 黄色片视频免费 | 国产免费成人 |