蓝桥杯算法入门(Python) 课件 6-5BFS基本代码.pptxVIP

  • 1
  • 0
  • 约1.48千字
  • 约 8页
  • 2026-08-23 发布于山东
  • 举报

蓝桥杯算法入门(Python) 课件 6-5BFS基本代码.pptx

罗勇军6.5BFS基本代码蓝桥杯算法入门

BFS原理2BFS原理:“逐层扩散”。从起点出发,按层次从近到远,逐层先后搜索。编码:用队列实现。应用:BFS一般用于求最短路径问题,BFS的特点是逐层搜索,先搜到的层离起点更近。

BFS:一群老鼠走迷宫假设老鼠无限多;在每个路口,都派出部分老鼠探索所有没走过的路;走某条路的老鼠,如果碰壁无法前行,就停下;如果到达的路口已经有别的老鼠探索过了,也停下;所有的道路都会走到,而且不会重复。全面扩散、逐层递进3

BFS访问示例全面扩散、逐层递进BFS访问顺序:{EBGADFICH}即“第1层E–第2层BG–第3层ADFI–第4层CH”4

BFS基本代码“BFS=队列”。以老鼠走迷宫为例,从起点s开始一层一层地扩散出去,处理完离s近的第i层之后,再处理第i+1层。这一操作用队列最方便,处理第i层的节点a时,把a的第i+1层的邻居,放到队列尾部即可。队列内的点有两个特征:(1)处理完第i层后,才会处理第i+1层;(2)队列中任意时刻最多有2层节点,其中第i层节点都在第i+1层前面。 5

BFS基本代码下面给出BFS遍历二叉树的代码。竞赛中一般用静态版二叉树,不易出错。6

7fromcollectionsimportdequeN=100t=[]*N#

文档评论(0)

1亿VIP精品文档

相关文档