Prim算法

Posted sunbines

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Prim算法相关的知识,希望对你有一定的参考价值。

算法背景

给定一个无向图,如果它任意两个顶点都联通并且是一棵树,那么我们就称之为生成树。如果是带权值的无向图,那么权值之和最小的生成树,我们就称之为最小生成树。

技术分享图片

 

Prim算法图解

此算法可以称为“加点法”,每次迭代选择代价最小的边对应的点,加入到最小生成树中。算法从某一个顶点s开始,逐渐长大覆盖整个连通网的所有顶点

            1. 图的所有顶点集合为V;初始令集合u={s},v=Vuu={s},v=V−u
            2. 在两个集合u,v能够组成的边中,选择一条代价最小的边(u,v),加入到最小生成树中,并把v并入到集合u中。
            3. 重复上述步骤,直到最小生成树有n-1条边或者n个顶点为止。

  1. 技术分享图片

 

以上是关于Prim算法的主要内容,如果未能解决你的问题,请参考以下文章

Prim 算法和 Dijkstra 算法的区别?

Prim算法

prim算法(最小生成树)

prim算法求最小生成树

最小生成树的prim算法 边的权值为啥不能为负值

最小生成树的prim算法 边的权值为啥不能为负值