BFS宽度优先搜索(新冠病毒的传播) 您所在的位置:网站首页 病毒传播算法 BFS宽度优先搜索(新冠病毒的传播)

BFS宽度优先搜索(新冠病毒的传播)

2024-07-14 06:34| 来源: 网络整理| 查看: 265

应该是我博客的第一篇广度优先搜索的算法了吧,之前题目都用的DFS,因为DFS确实比较熟练点,BFS虽然很久之前就知道他是怎么实现的但是没怎么自己真正实践过~~~而且以前一听队列就头大,不过最近这方面需求还挺大的-.- 文章首发

宽度优先搜索 (Breadth First Search)

宽度优先搜索算法(又称广度优先搜索)是最简便的图的搜索算法之一,这一算法也是很多重要的图的算法的原型。Dijkstra单源最短路径算法和Prim最小生成树算法都采用了和宽度优先搜索类似的思想。其别名又叫BFS,属于一种盲目搜寻法,目的是系统地展开并检查图中的所有节点,以找寻结果。换句话说,它并不考虑结果的可能位置,彻底地搜索整张图,直到找到结果为止。

简单的说应该就是,搜索当前可以到达的地方,压入队列,然后再取首元素,再查找,继续压入队列,与DFS有什么不同呢:把两个搜索比作探案,DFS就像是先摸着一个线索,然后深究到最后,如果不通再返回,查看有没有其他错过的东西,而BFS就像有逻辑的侦探,先找到能找到的所有线索,把它们收集起来,然后再一个个拨开,把它们后面的线索再收集起来。

在这里提供一个模板

迷宫题型 void bfs(){ 起点入队 //迷宫题用结构体存X,Y while(队列不为空){ 当前点 = qu


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有