普里姆算法的时间复杂度是O(nV)。

 我来答
高启强聊情感
高粉答主

2023-01-04 · 关注我不会让你失望
知道大有可为答主
回答量:5789
采纳率:100%
帮助的人:141万
展开全部

Prim算法的时间复杂度与网中的边数无关,适合于稠密图。

通过邻接矩阵图表示的简易实现中,找到所有最小权边共需O(V)的运行时间。使用简单的二叉堆与邻接表来表示的话,普里姆算法的运行时间则可缩减为O(ElogV),其中E为连通图的边数,V为顶点数。

如果使用较为复杂的斐波那契堆,则可将运行时间进一步缩短为O(E+VlogV),这在连通图足够密集时(当E满足Ω(VlogV)条件时),可较显著地提高运行速度。

扩展资料:

算法描述:

1、输入:一个加权连通图,其中顶点集合为V,边集合为E;

2、初始化:Vnew = {x},其中x为集合V中的任一节点(起始点),Enew = {},为空;

3、重复下列操作,直到Vnew = V:

在集合E中选取权值最小的边<u, v>,其中u为集合Vnew中的元素,而v不在Vnew集合当中,并且v∈V(如果存在有多条满足前述条件即具有相同权值的边,则可任意选取其中之一);

将v加入集合Vnew中,将<u, v>边加入集合Enew中;

4、输出:使用集合Vnew和Enew来描述所得到的最小生成树。

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式