给一个图,判断图的最小生成树是否唯一。
End[]记录邻接表尾节点的位置。MST表示最小生成树的大小,SecMST表示次小生成树的大小。#include
#include
#include
#include
using namespace std;
const int MAXN = 1010;
const int MAXM...
分类:
其他好文 时间:
2015-05-03 00:49:11
阅读次数:
187
题目链接:http://www.lightoj.com/volume_showproblem.php?problem=1380最小树形图也就是有向图的最小生成树。普通的prim无法求解。#include
#include
#include
#include
#include
#include <qu...
分类:
其他好文 时间:
2015-04-14 21:42:14
阅读次数:
179
我以前的版本
算法构造过程以及傻叉代码+弱版注释见以前博客
http://blog.csdn.net/vmurder/article/details/38819711
最小树形图:
名词解释:
~~~~~~~其实就是有向图的最小生成树,然后需要有一个根(一般默认为1),如果是无根最小树形图,我们可以牺牲时间复杂度, O(n)O(n) 枚举根跑最小树形图。
算法流程...
分类:
Web程序 时间:
2015-04-08 09:07:57
阅读次数:
176
最小生成树
一个有 n 个结点的连通图的最小生成树是原图的极小连通子图,且包含原图中的所有 n 个结点,并且有保持图连通的权值总和最小的边。
刘汝佳>P343详细介绍了最小生成树相关的知识。
下面直接给出Kruskal算法的模板:
#include
#include
#include
#include
#include
using namespace std...
分类:
其他好文 时间:
2015-04-05 06:44:04
阅读次数:
140
最小生成树计数题目描述现在给出了一个简单无向加权图.你不满足于求出这个图的最小生成树,而希望知道这个图中有多少个不同的最小生成树.(如果两颗最小生成树中至少有一条边不同,则这两个最小生成树就是不同的).由于不同的最小生成树可能很多,所以你只需要输出方案数对$31011$的模就可以了.输入第一行两个数...
分类:
Web程序 时间:
2015-03-30 20:41:26
阅读次数:
153
题目链接:BZOJ - 1016题目分析最小生成树的两个性质:同一个图的最小生成树,满足:1)同一种权值的边的个数相等2)用Kruscal按照从小到大,处理完某一种权值的所有边后,图的连通性相等这样,先做一次Kruscal求出每种权值的边的条数,再按照权值从小到大,对每种边进行 DFS, 求出这种权...
分类:
Web程序 时间:
2015-03-06 22:00:42
阅读次数:
385
题目:http://www.lydsy.com:808/JudgeOnline/problem.php?id=1016分析:首先有个性质:如果边集E、E'都可以表示一个图G的最小生成树(当然E和E’的元素个数肯定一样),那么某确定权值的边在E中出现的次数==在E‘中出现的次数简单证明一下:按照Kru...
分类:
Web程序 时间:
2015-03-02 00:56:51
阅读次数:
198
传送门:The Unique MST题意:判断最小生成树是否唯一。分析:先求出原图的最小生成树,然后枚举删掉最小生成树的边,重做kruskal,看新的值和原值是否一样,一样的话最小生成树不唯一。#include#include#include#include#include#include#incl...
分类:
其他好文 时间:
2015-02-06 20:27:36
阅读次数:
150
上一篇中写了图的最小生成树求法一——Kruskal算法 http://blog.csdn.net/wtyvhreal/article/details/43526695
这一篇中用另外一种方法来求解图的最小生成树,Prim算法。
图中随便选一个顶点开始,看看这个顶点有哪些边,在它的边中找一条最短的。1号有1-2,1-3,其中1-2短,选择1-2.通过它把1和2连接在一起。接下来开始枚举1...
分类:
编程语言 时间:
2015-02-05 16:36:13
阅读次数:
135
求下图的最小生成树:
数据给出如下:
第一行有两个数,n表示n个城市,m表示m条道路,接下来的m行,每行三个数a,b,c表示城市a到城市b的路程c。
现在需要解决的是,要求要最少的边让图连通(任意两点之间可以互相到达)。要想让n个顶点的图连通,那么至少需要n-1条边。其实这里就是求一个图的最小生成树。
基本思路:
首先按照边的权值进行从小到大排...
分类:
编程语言 时间:
2015-02-05 15:06:45
阅读次数:
141