python实现汉诺塔程序
生活随笔
收集整理的這篇文章主要介紹了
python实现汉诺塔程序
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
# 漢諾塔思想筆記
# 認識漢諾塔的目標:把A柱子上的N個盤子移動到C柱子
# 遞歸的思想就是把這個目標分解成三個子目標
# 子目標1:將前n-1個盤子從a移動到b上
# 子目標2:將最底下的最后一個盤子從a移動到c上
# 子目標3:將b上的n-1個盤子移動到c上
# 然后每個子目標又是一次獨立的漢諾塔游戲,也就可以繼續分解目標直到N為1
def move(n, a, b, c):
if n == 1:
print(a, '-->', c)
else:
move(n-1, a, c, b)# 子目標1
move(1, a, b, c)# 子目標2
move(n-1, b, a, c)# 子目標3
n = input('enter the number:')
move(int(n), 'A', 'B', 'C')
# 認識漢諾塔的目標:把A柱子上的N個盤子移動到C柱子
# 遞歸的思想就是把這個目標分解成三個子目標
# 子目標1:將前n-1個盤子從a移動到b上
# 子目標2:將最底下的最后一個盤子從a移動到c上
# 子目標3:將b上的n-1個盤子移動到c上
# 然后每個子目標又是一次獨立的漢諾塔游戲,也就可以繼續分解目標直到N為1
def move(n, a, b, c):
if n == 1:
print(a, '-->', c)
else:
move(n-1, a, c, b)# 子目標1
move(1, a, b, c)# 子目標2
move(n-1, b, a, c)# 子目標3
n = input('enter the number:')
move(int(n), 'A', 'B', 'C')
轉載于:https://www.cnblogs.com/Teachertao/p/10426380.html
總結
以上是生活随笔為你收集整理的python实现汉诺塔程序的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 4-1 面向对象概述
- 下一篇: 3d face paper