定义
Kruskal 算法(克鲁斯卡尔算法)是求解连通无向图最小生成树(MST)的贪心算法。
算法思想
- 将所有边按权值从小到大排序
- 依次选取权值最小的边
- 若该边连接的两个顶点不在同一连通分量中(不形成环),则加入 MST
- 重复步骤 2-3,直到选了 条边
关键数据结构
并查集(Union-Find):用于高效判断两个顶点是否在同一连通分量中。
时间复杂度
- 排序边:
- 并查集操作:近似
- 总复杂度:
适用场景
稀疏图(边数远小于 )的最小生成树问题。
Kruskal 算法(克鲁斯卡尔算法)是求解连通无向图最小生成树(MST)的贪心算法。
并查集(Union-Find):用于高效判断两个顶点是否在同一连通分量中。
稀疏图(边数远小于 )的最小生成树问题。