克鲁斯卡尔(Kruskal)算法(加边法)(时间复杂度是eloge)
思想:每次迭代选择一条满足条件的最小边,并将其加入生成树的边集中。
算法:
1、把图中的所有边按照代价从小到大排序,放到边集数组中;
2、把图中的N个顶点看成独立的N颗树组成的森林;
3、按照权值从大到小选择边,所选的边连接的两个顶点V0、V1必须属于两个不同的树,这样两棵树就合并成一棵树了;
4、重复(3)直到所有的顶点都在一棵树中或者有n-1条边。
1、把图中的所有边按照代价从小到大排序,放到边集数组中;
2、把图中的N个顶点看成独立的N颗树组成的森林;
3、按照权值从大到小选择边,所选的边连接的两个顶点V0、V1必须属于两个不同的树,这样两棵树就合并成一棵树了;
4、重复(3)直到所有的顶点都在一棵树中或者有n-1条边。