bfs
paranoidZ
这个作者很懒,什么都没留下…
展开
-
2020 8.3树的直径练习
树的直径,又称树的构 长链。 我们将丆 棵树 T = {V, E} 的直径定义为max(u,v), 也就是说,树中所有最短路径距离的构 大值即为树的直径。 这个树由于没有根结点,其实直径这个概念,还是理解为一 个连通无向无环图的直径也就是说任何两点之间只有一条路,n个点,n-1条边这里介绍两种解法1.俩次BFS或则DFS首先对任意一个结点做 BFS/DFS 求出最远的结点,然后以 这个结点为根结点再做 BFS/DFS 到达另一个最远结点。第一次 BFS/D...原创 2020-08-03 23:34:29 · 242 阅读 · 0 评论 -
BFS暑期相关练习
BFSBFS是用队列来写的,按层次遍历 (步数从小到大开始)入列的顺序和出列的顺序是一样的,所以用来求最小步数,而DFS是求一条路径(不一定是最短)这就是BFS和DFS的区别通常要设置结构体保存坐标和步数,起点的步数为0,一般都是求最小步数。如果每一步的步数不是+1那么就需要用到优先队列了下面这个题是求最小不步数的,献给阿尔吉侬的花束阿尔吉侬是一只聪明又慵懒的小白鼠,它最擅长的就是走各种各样的迷宫。今天它要挑战一个非常大的迷宫,研究员们为了鼓励阿尔吉侬尽快到达...原创 2020-07-25 11:41:26 · 148 阅读 · 0 评论 -
树的直径
之前写过对bfs的理解传送门:bfs理解如果理解的话很好写的现在简单说一下,求解树的直径,我做过俩种类型的题:第一种:树是以图的形式给出的,求最远端点的最小步数,bfs更新找到最远端点第二种:给你图的每一条边,首先你需要进行存图,bfs更新找到最大值。下面给出俩个题:After hearing about the epidemic of obesity in the U...原创 2020-03-19 15:04:19 · 87 阅读 · 0 评论 -
bfs的理解
bfs的小理解通常来说bfs是和队列(优先队列)联系在一起的。解决的问题如果是队列的话用于求解最小步数,因为bfs的遍历方法为层次遍历,即每一层的步数都相同,因为有判重数组的存在不会重复的进行遍历如果是优先队列的话用于求最短时间(每一层步数不一定相同)小步数优先。举个例子模拟一下从2开始遍历的1,3,6在第一层,5,4,7在第二层,8在第三层,当每一层步数都相同时,用...原创 2020-03-18 23:39:39 · 1437 阅读 · 0 评论 -
落谷P1605 迷宫
题目背景给定一个N*M方格的迷宫,迷宫里有T处障碍,障碍处不可通过。给定起点坐标和终点坐标,问: 每个方格最多经过1次,有多少种从起点坐标到终点坐标的方案。在迷宫中移动有上下左右四种方式,每次只能移动一个方格。数据保证起点上没有障碍。题目描述无输入格式第一行N、M和T,N为行,M为列,T为障碍总数。第二行起点坐标SX,SY,终点坐标FX,FY。接下来T行,每行为障碍点的坐标。...原创 2019-09-05 14:28:15 · 183 阅读 · 0 评论