最小生成树
树的性质:
1. 用一条边连接任意两个新的顶点都会产生一个新的环
2. 从树中删掉一条边会得到两棵新的树
切分定理:
由上述两条性质可以得到切分定理:
(切分是将图中的顶点分为两个不同的集合,然后比较其横切边的权值)
(横切边是一条连接两个顶点的不同的边)
在一幅加权图中,给定任意的切分,它的横切边中最小者一定属于最小生成树。
(证明:利用反证法,假设最小生成树不包含其中一条最小的横切边E,那么将E加入到最小生成树中,根据树的性质,将会形成一个环。这个环中一定包含另外的一条横切边F,且F的权重一定大于E。若原图删掉F,则得到两棵树,以E连接后最小生成树的权重更小。)
贪心算法:
使用切分定理找到最小生成树的一条边,更换切分方式,找到另外的一条边,重复此过程,直到找到所有属于最小生成树的边(N-1)。
Prim 延时算法:
逐步添加,每一步为生长中的树添加一条边。当添加一条边时(优先队列中权重最小的边),同时也包含了一个节点,此节点与这时不在生成树