python益智游戏计算汉诺塔问题示例

yipeiwu_com5年前Python基础

汉诺塔(又称河内塔)问题是源于印度一个古老传说的益智玩具。大梵天创造世界的时候做了三根金刚石柱子,在一根柱子上从下往上按照大小顺序摞着64片黄金圆盘。大梵天命令婆罗门把圆盘从下面开始按大小顺序重新摆放在另一根柱子上。并且规定,在小圆盘上不能放大圆盘,在三根柱子之间一次只能移动一个圆盘。

复制代码 代码如下:

times = 0
def test(num,a,b,c):
    globaltimes
    ifnum==1:
       print (a,b)
       times+=1

    else:
       test(num-1,a,c,b)
       test(1,a,b,c)
       test(num-1,c,b,a)
      

  

test(12,"a","b","c")
print "经过的步数passing:%d"%times

相关文章

python对象销毁实例(垃圾回收)

我就废话不多说了,直接上代码吧! '''python对象销毁(垃圾回收)''' class Point: 'info class' def __init__(self,x...

Python图算法实例分析

本文实例讲述了Python图算法。分享给大家供大家参考,具体如下: #encoding=utf-8 import networkx,heapq,sys from matplotlib...

Python实现数据库编程方法详解

本文实例讲述了Python实现数据库编程方法。分享给大家供大家参考。具体分析如下: 用PYTHON语言进行数据库编程, 至少有六种方法可供采用. 我在实际项目中采用,不但功能强大,而且方...

python pickle 和 shelve模块的用法

1.pickle    写: 以写方式打开一个文件描述符,调用pickle.dump把对象写进去复制代码 代码如下:    dn = {...

python 布尔操作实现代码

和别的语言布尔类型定义1为真,0为假不同,python定义的真假比较多。 先说下假吧: false,none,0,"",{},[],() 而真的话,只要和上面的相反就行,比如上面是fal...