已知一个无向图如下,分别用普里姆和克鲁斯卡尔算法生成最小生成树(假设以1为起点,试画出构造过程)。

已知一个无向图如下所示,要求分别用普里姆和克鲁斯卡尔算法生成最小生成树(假设以1为起点,试画出构造过程)。... 已知一个无向图如下所示,要求分别用普里姆和克鲁斯卡尔算法生成最小生成树(假设以1为起点,试画出构造过程)。 展开
 我来答
just_love01
2018-12-10 · TA获得超过121个赞
知道答主
回答量:26
采纳率:8%
帮助的人:3.4万
展开全部

1)普里姆算法思想
从图中任意取出一个顶点, 把它当成棵树,然后从与这棵树相接的边中选取一条最短(权值最小)的边, 并将这条边及其所连接的顶点也并入这棵树中,此时得到了一棵有两个顶点的树。然后从与这棵树相接的边中选取一条最短的边,并将这条边及其所连顶点并入当前树中,得到一棵有3个顶点的树。以此类推,直到图中所有顶点都被并入树中为止,此时得到的生成树就是最小生成树
2)克鲁斯卡尔算法思想
先将边中的权值从小到大排序,每次找出候选边中权值最小的边,就将该边并入生成树中。重复此过程直到所有边都被检测完为止。其中要注意的是克鲁斯卡尔算法需要用到并查集,以此来判断接下来要并入的边是否会和已并入的边构成回路。这两个图分别用普里姆和克鲁斯卡尔生成的最小生成树见图。


需要注意的是,在接下来要并入的最小权值不唯一的情况下,可以选取的边是不唯一的,所以其最小生成树也不唯一。(纯手打,望采纳,谢谢。)

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

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式