加快networkx中的随机最小生成树?

时间:2018-08-07 09:02:43

标签: python optimization networkx

以下是一些代码,其目标是使用贪婪和随机边缘权重构建随机生成树。它的运行速度比我想要的慢得多。有什么技巧可以加快速度吗?

随机生成的权重最小生成树的采样速度都很慢...第一个对我来说尤其奇怪,因为只有179400条边和np.random.uniform(0 ,1,179400)执行得非常快。

(这里的慢速意味着大约几秒钟。)

(我很乐意使用networkx以外的其他东西,但这不是可取的。)

run as administrator

1 个答案:

答案 0 :(得分:2)

如果在测试中更快地批量生成随机数,则只需这样做。

rand = np.random.uniform(0, 1, graph.edges.size())
i = 0
for edge in graph.edges():
    graph.edges[edge]["weight"] = rand[i]
    i += 1