BFS_ALGORITHM PENETRATION_LAB

广度优先搜索可视化教程:像水波一样层层探索未知的网络节点。

MAP_ID: SECTOR_G12
SPEED:

什么是广度优先 (BFS)?

想象你向平静的湖面丢了一块石头。涟漪是一层一层向外扩散的。BFS就是这种逻辑: 它先访问距离起点最近的所有节点,然后再去访问距离为2的节点,以此类推。 它使用 队列 (Queue) 来实现——先进先出。

def bfs(graph, start):
    visited = set() # 记录已黑入的节点
    queue = [start] # 待渗透的任务队列
    visited.add(start)
    while queue:
        node = queue.pop(0) # 取出队首 (先进先出)
        process(node) # 执行当前节点逻辑
        for neighbor in graph[node]:
            if neighbor not in visited:
                visited.add(neighbor)
                queue.append(neighbor) # 标记新目标并入队