⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 hamilton.py

📁 树的算法
💻 PY
字号:
#!/usr/bin/env python# -*- coding: GB2312 -*-# Last modified:"""halmilton question"""__revision__ = '0.1'def isOK(k,x,c):    for i in range (0,k):        if x[k]==x[i] or not c[x[k]][x[k-1]]:            return 0    return 1def hamilton(n, x, c):    for i in range(0,n):        x[0]=i        k=1        while k>0:            while k<n and x[k]<n and not isOK(k,x,c):                 x[k]=x[k]+1            if x[k]<n:                if k==n-1:                    if c[x[0]][x[k]]:                        print "%d,%d,%d,%d,%d" % (x[0],x[1],x[2],x[3],x[4])                    k=k-1                    x[k]=x[k]+1                else:                    k=k+1                    x[k]=0            else:                k=k-1                x[k]=x[k]+1if __name__=="__main__":    c=[ [0,1,0,1,0],        [1,0,1,1,1],        [0,1,0,1,1],        [1,1,1,0,1],        [0,1,1,1,0] ]    x=[0,0,0,0,0]    n=5    hamilton(n,x,c)# zou@ICT-FFC822E11FE:~/Code/algorithm$ python hamilton.py# 0,1,2,4,3# 0,1,4,2,3# 0,3,2,4,1# 0,3,4,2,1

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -