最小生成树之java实现

一、 普利姆(Prim)算法

图示:
prim算法

算法思想:
1. 取图中任意一个顶点v作为生成树的根
2. 选择一个顶点在生成树中,另一个顶点不在生成树中边权最小的边,将顶点以及边添加至生成树中
3. 继续执行步骤2,直至生成树上含有n-1条边为止

二、 克鲁斯卡尔(Kruskal)算法

图示:
krusal算法

算法思想:
1. 将图中全部顶点放入生成树中
2. 选择联结不同连通分量边权最小的边,将边添加至生成树当中
3. 继续执行步骤2,直至生成树上含有n-1条边为止
注:如果图中两个顶点之间存在拓展的边则称这两个顶点为同一连通分量。

发布了31 篇原创文章 · 获赞 25 · 访问量 7万+

猜你喜欢

转载自blog.csdn.net/s_842499467/article/details/76555933
今日推荐