Python Kruskal算法初始化空集
Kruskal算法的一个要求是首先为顶点初始化一个空集,但我遇到了一些问题 如果我有一个用Python Kruskal算法初始化空集,python,graph,set,minimum-spanning-tree,kruskals-algorithm,Python,Graph,Set,Minimum Spanning Tree,Kruskals Algorithm,Kruskal算法的一个要求是首先为顶点初始化一个空集,但我遇到了一些问题 如果我有一个用 [1,2,4] [10,3,5] [6,1,3] 如果第一个索引值是源顶点,第二个值是目标顶点,第三个值是权重,我将如何启动顶点的空集 我试过这样的方法: v_set = [0] * 11 但是我将顶点限制为11,因此,如果有一个顶点为12,它将产生一个索引超出范围的错误。如果您能提供一些帮助,将不胜感激。您可以将顶点表示为一个由顶点编号和边列表组成的列表,作为对应于目标顶点和边权重的元组: 您的图形
[1,2,4]
[10,3,5]
[6,1,3]
如果第一个索引值是源顶点,第二个值是目标顶点,第三个值是权重,我将如何启动顶点的空集
我试过这样的方法:
v_set = [0] * 11
但是我将顶点限制为11,因此,如果有一个顶点为12,它将产生一个索引超出范围的错误。如果您能提供一些帮助,将不胜感激。您可以将顶点表示为一个由顶点编号和边列表组成的列表,作为对应于目标顶点和边权重的元组: 您的图形可能如下所示:
[1, [(2, 14), (3, 10)]]
[2, [(1, 14), (4, 2)]]
[3, [(1, 10)]]
[4, [(2, 2)]]
其中:
edge
-----
[3, [(1, 10)]]
^ ^ ^ weight
| destination vertice
Vertice number