使用递归-分治方法解决汉诺塔问题

#count: 起始立柱的塔块数量
#from: 起始立柱
#by: 过渡立柱
#to: 目标立柱
def move(count, fro, by, to):
    if(count == 1):
        print(fro, '-->', to)
    else:
        move(count-1, fro, to, by)#把起始立柱上面的n-1个塔块移到过渡立柱
        move(1, fro, by, to)#把起始立柱剩下的的1个塔块移到目标立柱
        move(count-1, by, fro, to)#把移到过渡立柱的n-1个塔块移到目标立柱

move(3, '左侧塔', '中间塔', '右侧塔')

你可能感兴趣的:(Python,算法)