汉诺塔递归

汉诺塔是比较经典的递归题目,此题陷井在于,在一个函数里,要先后递归两次。利用参数位置转变,达到输出路径的效果。
def
move(n,x,y,z):#x借助y移到z if(n==1): print '%s -> %s'%(x,z) else: move(n-1,x,z,y)#先把N-1借助z移到y print '%s -> %s'%(x,z) #再把x直接移到z上 move(n-1,y,x,z)#再把y上的n-1 借助x移到Z上 move(3,'a','b','c')

 

posted @ 2018-03-20 22:41  木易不觉  阅读(73)  评论(0)    收藏  举报