【发布时间】:2014-12-12 23:27:11
【问题描述】:
我正在尝试制作一个使用 Kruskal 算法计算最小跨度重量的程序,
我已经使用它们的权重按递增顺序对边缘进行了排序,并将其放入二维列表中。
然后我写了一个方法来使用 sortededge 获得最小权重,
取样,sortededge = [['1', '2', '1'], ['5', '6', '1'], ['2', '4', '2'], ['3', '6', '2'], ['3', '5', '3'], ['4', '6', '3'], ['3', '4', '5'], ['1', '3', '6']]
方法是
vertexcheck = []
minimumdistance = 0
def MSW:
for i in range(len(sortededge)):
if (sortededge[i][0] not in vertexcheck) or (sortededge[i][1] not in vertexcheck):
if (sortededge[i][0] not in vertexcheck):
vertexcheck.append(sortededge[i][0])
if (sortededge[i][1] not in vertexcheck):
vertexcheck.append(sortededge[i][1])
minimumdistance += int(sortededge[i][2])
但它不适用于所有图表,我欢迎任何帮助
【问题讨论】:
-
欢迎来到 Stackoverflow!您可以使用编辑器中的“{ }”按钮以可读的方式格式化您的代码。请具体说明“不起作用”的含义;代码失败的例子是什么?该示例的实际和预期结果是什么?
标签: python algorithm data-structures graph