思路:考虑的是并查集,还有贪心算法中的克鲁斯卡尔算法,考虑的时候要借助 贪心算法还有并查集,建立树的概念,通过寻找父节点,看是否是满足的父节点,然后进行一些列的判断求解。
#include
#include
using namespace std;
struct dis
{
    int a,b,c;
}s[10010];
int cmp(dis x,dis y)
{
    return ...
                            
                            
                                分类:
其他好文   时间:
2015-05-27 15:56:43   
                                阅读次数:
153
                             
                         
                    
                        
                            
                            
                                一个有n个结点的连通图的生成树是原图的极小连通子图,且包含原图中的所有n个结点,并且有保持图连通的最少的边。最小生成树可以用kruskal(克鲁斯卡尔)算法或Prim(普里姆)算法求出。应用:例如要在n个城市之间铺设光缆,主要目标是要使这n个城市的任意两个之间都可以通信,但铺设光缆的费用很高,且各个...
                            
                            
                                分类:
编程语言   时间:
2015-05-26 06:44:52   
                                阅读次数:
265
                             
                         
                    
                        
                            
                            
                                假设要在n个城市之间建立通信联络网,则连通n个城市只需要n-1条线路。这时,自然会考虑一个问题,就是如何在最节省经费的前提下建立这个通信网。类似此类的问题很多,比如煤气管道问题等,这些问题都等价于,在含有n个顶点的连通网中,选择n-1条边,构成一颗极小的连通子图,并使该连通子图中n-1条边上的权值达到最小,则称该子图为连通网的最小生成树。
        有两种常用算法,分别是克鲁斯卡尔(Kru...
                            
                            
                                分类:
其他好文   时间:
2015-05-25 16:41:09   
                                阅读次数:
131
                             
                         
                    
                        
                            
                            
                                #include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#define INF 100000000
using namespace std;
int n,m,r;
struct node{
	int x,y,w;
	bool oper...
                            
                            
                                分类:
编程语言   时间:
2015-05-14 08:42:50   
                                阅读次数:
148
                             
                         
                    
                        
                            
                            
                                Truck History
Time Limit: 2000MS
 
Memory Limit: 65536K
Total Submissions: 20140
 
Accepted: 7791
Description
Advanced Cargo Movement, Ltd. uses trucks of different typ...
                            
                            
                                分类:
其他好文   时间:
2015-04-17 11:39:03   
                                阅读次数:
110
                             
                         
                    
                        
                            
                            
                                首先给出 一些 概念问题:
1.生成树: 一个n个顶点的 连通图 的 极小连通子图。 它含有n个顶点,但只有 n-1条边,不存在回路。
2.最小生成树:一个带权的 无向连通图,求出 各边权值相加  最小的 生成树,叫做最小生成树。
所以 求最小生成树  首先 要满足: 1. 首先 是 无向图 2. 必须是 连通图(任意两个顶点可达)3.带权
简单的说 就是 必须是 连通网。
求...
                            
                            
                                分类:
其他好文   时间:
2015-04-13 09:47:10   
                                阅读次数:
187
                             
                         
                    
                        
                            
                            
                                [算法第一轮复习] kruskal求最小生成树算法
最小生成树算法即MST,有kruskal,prim两种算法,这里主要介绍kruskal
什么是最小生成树?
  对于一个图,保证其中每个点都可以连通的最小的花费
1.算法核心
  贪心+并查集
2.算法实现过程
克鲁斯卡尔算法
假设 WN=(V,{E}) 是一个含有 n 个顶点的连通网,则按照克鲁斯卡尔算法构造...
                            
                            
                                分类:
编程语言   时间:
2015-04-09 17:40:48   
                                阅读次数:
191
                             
                         
                    
                        
                            
                            
                                图的连通性问题:无向图的连通分量和生成树,所有顶点均由边连接在一起,但不存在回路的图。设图 G=(V, E) 是个连通图,当从图任一顶点出发遍历图G 时,将边集 E(G) 分成两个集合 T(G) 和 B(G)。其中 T(G)是遍历图时所经过的边的集合,B(G) 是遍历图时未经过的边的集合。显然,G1...
                            
                            
                                分类:
编程语言   时间:
2015-04-08 22:58:16   
                                阅读次数:
302
                             
                         
                    
                        
                            
                            
                                public class Main {
	static final int MAXVEX =65535;
	static final int MINVEX =65535;
	public static void main(String[] args) {
		MyGrop2 p = new MyGrop2();
		new Main().MiniSpanTree(p);
	}
	static in...
                            
                            
                                分类:
其他好文   时间:
2015-04-08 09:21:39   
                                阅读次数:
109
                             
                         
                    
                        
                            
                            
                                Matrix
Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 2610    Accepted Submission(s): 977
Problem Description
Machines have once a...
                            
                            
                                分类:
其他好文   时间:
2015-04-06 08:52:56   
                                阅读次数:
215