广度优先算法

文章目录

概要

广度优先,图的应用。看下都有什么用处。

广度优先算法,基于图的一种应用。

特点

广度优先,直观地讲,它其实就是一种"地毯式"层层推进的搜索策略,即先查找离起始顶点最近的,然后是次近的,依次往外搜索。

代码Python

python 复制代码
def BFS(graph, start, end):

    visited = set()
	queue = [] 
	queue.append([start]) 
	
	while queue: 
		node = queue.pop() 
		visited.add(node)

		process(node) 		
		nodes = generate_related_nodes(node) 
		queue.push(nodes)

小结

广度优先,图的一种应用。

同样的,配了一个动画的演示。可以去看下动画官网。毕竟,代码是空洞的,文字是无力的。可以看下动画,一步一步怎么来的。这样,也好理解下。

相关推荐
相信神话2021几秒前
第零章:新手的第一课:正确认知游戏开发
大数据·数据库·算法·2d游戏编程·godot4·2d游戏开发
汀沿河13 分钟前
2 模型预训练、微调、强化学习的格式
人工智能·算法·机器学习
AMoon丶17 分钟前
Golang--多种数据结构详解
linux·c语言·开发语言·数据结构·c++·后端·golang
颜酱33 分钟前
最小生成树(MST)核心原理 + Kruskal & Prim 算法
javascript·后端·算法
啊哦呃咦唔鱼43 分钟前
LeetCode hot100-3 无重复字符的最长子串
算法·leetcode·职场和发展
phltxy1 小时前
算法刷题|模拟思想高频题全解(Java版)
java·开发语言·算法
宵时待雨1 小时前
C++笔记归纳10:继承
开发语言·数据结构·c++·笔记·算法
田梓燊1 小时前
最长的连续序列到底怎么写
算法·哈希算法·散列表
smchaopiao1 小时前
C++20概念(Concepts)入门指南
开发语言·c++·算法
一叶落4382 小时前
LeetCode 21. 合并两个有序链表(C语言详解 | 链表经典题)
c语言·数据结构·c++·算法·leetcode·链表