最小生成树
文章平均质量分 71
Miracle 007
这个作者很懒,什么都没留下…
展开
-
第2节——再谈最小生成树(Prim算法)
算法流程如果说上个算法基于点,那这个Prim算法就是基于边的。算法流程大致如下:1.从任意一个人顶点开始构造生成树,假设从1号顶点开始。首先将1号顶点加入生成树中,用一个一维数组book来标记那些顶点已经加入了生成树。2.用数组dis记录生成树到各个顶点的距离。最初生成树中只有1号顶点,有直连边时,数组dis中存储的就是1号顶点到该顶点的边的权值,没有直连边时就是无穷大,即inf。3.从数组dis中选出离生成树最近的顶点(假设这个顶点为j)加入到生成树中(即在数组dis中找最小值)。再以j为中间点原创 2021-04-25 21:52:01 · 242 阅读 · 0 评论 -
第一节 镖局运镖——图的最小生成树(Kruskal算法)
镖局每到一个新地方开展业务,都需要对运镖途中的绿林好汉进行打点。好说话的打点费就比较低,不好说话的打点费就比较高。现在已知城镇地图如下,顶点是城镇编号,边上的值表示这条道路上打点绿林好汉需要的银子数。数据给出如下:6 92 4 113 5 134 6 35 6 42 3 64 5 71 2 13 4 91 3 2第一行有两个数n和m,n表示有n个城市,m表示有m条道路。接下来的m行,每行形如“a b c”用来表示一条道路,意思是城市a到城市b需要花费的银子数是e。镖局现在需要选原创 2021-04-23 21:38:48 · 396 阅读 · 0 评论