最小生成树的另一种算法,比较适合处理稀疏图。算法思想:按权值的递增次序选择合适的边来构造最小生成树。
以下代码包含无向带权图的建立,Kruskal算法的完整过程。请观看【动画演示Kruskal算法 】,验证程序是否正确。
代码说明:
1.vest[]数组存放两个顶点间的连通分量
2.结构体E[]数组是按权值从小到大排列的边集
3.对E的排序采用了qsort排序,自定义的排序函数是对结构体的二级排序
给定的带权无向图如下:
实现的完整代码如下:
程序测试结果如下: