用python写DFS算法
时间: 2023-12-16 10:03:17 浏览: 76
基于python的DFS算法设计与实现
以下是 Python 中的 DFS 算法示例:
```
def dfs(graph, start, visited=None):
if visited is None:
visited = set()
visited.add(start)
print(start)
for next_node in graph[start] - visited:
dfs(graph, next_node, visited)
return visited
```
这里的 `graph` 是一个字典,键是节点,值是与该节点相邻的节点的集合。`start` 是起点节点,`visited` 是一个集合,表示已经访问过的节点。
在函数中,首先将起点节点加入到 `visited` 集合中,并打印该节点。然后遍历与起点节点相邻的节点,如果该节点没有被访问过,则递归调用 `dfs` 函数,将该节点和 `visited` 集合传递下去。
最后,返回 `visited` 集合,表示遍历的所有节点。
阅读全文