from collections import deque
def bfs(graph, start):
visited = set() # 储存已经访问过的节点
queue = deque([start]) # 创建一个队列并将起点加入其中
visited.add(start) # 将起点标记为已访问
while queue: # 当队列不为空时执行循环
cur = queue.popleft() # 取出队首元素
print(cur) # 访问当前节点
if cur in graph:
for neighbor in graph[cur]: # 遍历当前节点的所有相邻节点
if neighbor not in visited: # 如果相邻节点未被访问过
queue.append(neighbor) # 将其加入队列尾部
visited.add(neighbor) # 并将其标记为已访问过
bfs(graph, 'A')
#输出顺序ABCDEF
(4)BFS(广度优先搜索)python简单模板
最新推荐文章于 2024-05-08 20:54:14 发布