1.最小生成树问题
最小生成树问题:一个图有V个顶点,找到V-1条边连接这V个顶点,使得总权值最小
最小生成树问题通常是针对带权无向图、连通图
如果图不是连通图:分别在每个连通分量上计算最小生成树---最小生成森林
应用:电缆布线设计、网络设计、电路设计
最小生成树为我们提供让所有点都连通,并且连通的点的权值最小的一个方案
2.切分定理
3.Prim算法
用于解决稠密图的最小生成树问题。
计算下图的最小生成树
算法流程:
首先将0结点为一个切分,剩下的结点为一个切分,那么0-2、0-4、0-6、0-7就是横切边
根据切分定理,0-7的权值最小,那么这时0-7这条边一定是最小生成树的一边。将7也加入到切分中
横切边1-7的权值最小,将1加入切分中
横切边0-2的权值最小,将2加入切分中
横切边2-3的权值最小,将3加入切分中
横切边5-7的权值最小,将7加入切分中
1-3的权值最小,但是此时1-3已经不是横切边了,因为1、3结点已经在切分中了
一直取最小的边,如果不是横切边则扔掉,直到取到一个横切边
横切边4-5的权值最小,将4加入切分中