图的生成树是它的一棵含有其所有顶点的无环连通子图。一幅加权无向图的最小生成树是它的一棵权值最小的生成树。如下图
树的两个重要性质:
- 用一条边连接树中的任意两个顶点都会产生一个新的环
- 从树中删除一条边将会得到两棵独立的树。
图的一种切分是将图的所有顶点分为两个非空且不重复的两个集合。横切边是一条连接两个属于不同集合的顶点的边。
切分定理:在一幅加权图中,给定任意的切分,它的横切边中的权重最小者必然属于图的最小生成树。
Prim(普利姆)算法
Prim算法的每一步都会为一棵生长中的树添加一条边。一开始这棵树只有一个顶点,然后会向它添加V-1条边,每次总是将下一条连接树中的顶点不在树中的顶点且权重最小的边加入树中(即由树中的顶点所定义的切分中的一条横边)。