2013年2月4日

最小树形图

摘要: 其实好几天前就开始看最小树形图了,不过每次看心情都很浮躁,根本看不进去,今天做了几道模板题,算是对此有些了解了吧~趁着知识还热着,快快记下来!!呵呵最小树形图其实就是有向图的最小生成树,树形图是一棵有向树,它的根可以到达其他图的其他每个节点。最小树形图是一个图的所有树形图中边权值最小的。求解最小生成树的步骤如下:1、对除了根节点外的每个节点i,求出权值最小的入边。2、如果这些入边不构成环,那么入边的集合E即为所求。否则将有向环缩成一个点。注意:对于无根的情况->虚拟一个超级根节点,向每个节点拉出一条边,权值应大于所有权值和其实一开始真的很难理解,不知如何下手,找了很多资料,最后看到那张图 阅读全文

posted @ 2013-02-04 21:53 Lavare 阅读(282) 评论(0) 推荐(0)

最小生成树

摘要: 发现图论真的是很难的一块知识,遂决定从最小生成树开始,一点点积累,养成自己思考些代码的好习惯~下面介绍实现最小生成树的2种基本算法:Kruskal算法和prime算法附上模板(ps:参考了小明哥的模板):1、Kruskal O(Elg(E))#define type doublestruct Road { int u, v; type len;}road[MAXE];int n, cc;int tree[MAXN];bool cmp(Road a, Road b) { return a.len < b.len;}int find(int x) { if(tree[x] ... 阅读全文

posted @ 2013-02-04 14:49 Lavare 阅读(173) 评论(0) 推荐(0)

导航