1. 最小生成树:
最小生成树即为图中权值最小的生成树(生成树中所有边权重之和)。
例如对于无向图:
来说最小生成树就是:
1.1 最小生成树算法
最小生成树的算法主要有两个:
- Kruskal 算法
- Prim 算法
1.1.1 Kruskal 算法
算法演示如下:
代码如下,嵌入到上一篇论文的图构造里面 Python 图(Graph)数据结构(一):图的构造与遍历(深度优先 DFS 和广度优先 BFS):
def cruskal(self):
edges = self.edges()
edges.sort(key=lambda edges: edges[2])
connet = {}
res =