class Graph(object):
"""docstring for Graph"""
def __init__(self, mat):
super(Graph, self).__init__()
self.n = len(mat[0])
self.edge = 0
self.mat = mat
self.vertex = []
self.visited = [0 for i in range(n)]
self.found = 0
self.path = []
self.solution = []
def DFS(self):
for i in range(self.n):
if not self.visited[i]:
self.dfs(i)
def dfs(self,i):
self.visited[i] = 1
print(i)
for j in range(self.n):
if not self.visited[j] and self.mat[i][j]:
self.dfs(j)
def CrossRiver(self):
self.vertex = []
for i in range(2):
for j in range(2):
for k in range(2):
for p in range(2):
for q in range(2):
for r in range(2):
self.vertex.append([i,j,k,p,q,r])
self.n = 64
self.mat = mat = [[0 for j in range(self.n)] for i in range(sel
夫妻过河问题---图论算法的应用(Python实现)
最新推荐文章于 2024-03-30 17:35:00 发布
本文通过Python实现了一个图论算法来解决夫妻过河问题。首先定义了Graph类,包括DFS深度优先搜索方法。接着,通过生成所有可能的状态并建立邻接矩阵,寻找有效的过河路径。最后展示了解决方案的具体步骤和走法。
摘要由CSDN通过智能技术生成