广度优先搜索

广度优先搜索

广度优先搜索是一种对图进行搜索的算法。

 

算法步骤

假设我们一开始位于某个顶点(即起点),此时并不知道图的整体结构,而我们的目的是从起点开始顺着边搜索,直到到达指定顶点(即终点)。在此过程中每走到一个顶点,就会判断一次它是否为终点。广度优先搜索会优先从离起点近的顶点开始搜索。

 

 此处,候补顶点是用“先入先出”(FIFO)的方式来管理的

 

搜索G的搜索顺序为 A->B->C->D->E->F->H->I->J->K->G

为了方便说明,这次讲解用的是没有闭环的图。不过,如果图中有闭环,其搜索步骤也是一样的。像示例那样的没有闭环的图叫作“树”。

 

 

广度优先搜索效率

广度优先搜索的特征为从起点开始,由近及远进行广泛的搜索。因此,目标顶点离起点越近,搜索结束得就越快。

 

参考: 我的第一本算法书 4-2 广度优先搜索

posted @   草木物语  阅读(216)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示