当前位置: 首页> 财经> 访谈 > 无锡做网站哪家公司好_众筹的网络营销是什么_竞价网站_软件开发培训多少钱

无锡做网站哪家公司好_众筹的网络营销是什么_竞价网站_软件开发培训多少钱

时间:2025/7/11 7:30:43来源:https://blog.csdn.net/weixin_73566800/article/details/146258330 浏览次数:1次
无锡做网站哪家公司好_众筹的网络营销是什么_竞价网站_软件开发培训多少钱

BFS是一种用于图的遍历或搜索算法,它从根节点(选择某个任意节点作为起点)开始,首先访问其所有邻居节点,然后再依次访问这些邻居节点的未访问邻居节点

from collections import dequedef bfs(graph, start):# 记录已访问的节点visited = set()# 初始化队列,并将起始节点加入队列queue = deque([start])visited.add(start)# 当队列不为空时继续循环while queue:# 从队列中取出并访问队首节点vertex = queue.popleft()print(vertex, end=" ")# 遍历当前节点的所有邻居节点for neighbour in graph[vertex]:if neighbour not in visited:# 如果邻居节点未被访问,则标记为已访问并加入队列visited.add(neighbour)queue.append(neighbour)# 示例图
graph = {'A': ['B', 'C', 'D'],'B': ['E', 'F'],'C': ['G'],'D': [],'E': [],'F': [],'G': []
}# 调用BFS函数并传入图和起始节点
bfs(graph, 'A')

1.导入模块

from collections import deque

2.定义BFS函数

def bfs(graph,start):

定义一个名为 bfs 的函数,接收两个参数:图 graph 和起始节点 start

3.初始化数据结构:

visited = set()

queue = deque([start])

visited.add(start)

4.处理队列中的节点:

while queue:

vertex = queue.popleft()

print(vertex,end=" ")

5.遍历邻居节点:

for neighbour in graph[vertex]:

if neighbour not in visited:

visited.add(neighbour)

queue.append(neighbour)

对于当前节点vertex 的每一个邻居节点 neighbour,如果该邻居节点尚未被访问过,则将其标记为已访问,并加入队列

6.示例图:

graph = {

'A':['B','C','D'],

'B':['E','F'],

'C':['G'],

'D':[ ],

'E':[ ],

'F':[ ],

'G':[ ]

}

这是一个简单的无向图,表示了各个节点及其连接关系

7.调用bfs函数

bfs(graph,'A')

以节点 'A' 作为起始节点,对给定的图执行广度优先搜索。

关键字:无锡做网站哪家公司好_众筹的网络营销是什么_竞价网站_软件开发培训多少钱

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: