第 16 章 模板模式
def bfs(graph, start, end):
path = []
visited = [start]
while visited:
current = visited.pop(0)
if current not in path:
path.append(current)
if current == end:
print(path)
return (True, path)
# 两个顶点不相连,则跳过
if current not in graph:
continue
visited = visited + graph[current] # 仅有该行不同
return (False, path)
def dfs(graph, start, end):
path = []
visited = [start]
while visited:
current = visited.pop(0)
if current not in path:
path.append(current)
if current == end:
print(path)
return (True, path)
# 两个顶点不相连,则跳过
if current not in graph:
continue
visited = graph[current] + visited # 仅有该行不同
return (False, path)16.1 现实生活的例子
16.2 软件的例子
16.3 应用案例
16.4 实现
16.5 小结
Last updated