用Python代码实现dfs算法
时间: 2023-10-15 14:06:41 浏览: 87
基于python的深度优先搜索算法DFS设计与实现
5星 · 资源好评率100%
以下是一个DFS算法实现的示例代码:
```
def dfs(graph, start, visited=None):
if visited is None:
visited = set()
visited.add(start)
print(start)
for next in graph[start] - visited:
dfs(graph, next, visited)
return visited
```
这个函数接收一个图(以字典形式表示),一个起始节点和一个可选的visited集合作为参数。如果visited集合不存在,则它将被创建为空集合。
在函数的第一行,我们将起始节点添加到visited集合中,并打印它。然后,我们遍历与起始节点相邻的所有未访问的节点,并递归地调用dfs函数来访问它们。在递归调用之后,我们将访问的节点添加到visited集合中。
最后,我们返回visited集合,其中包含了从起始节点可以到达的所有节点。
阅读全文