用于动态图的 C/C++ 库?

Raf*_*ini 6 c c++ algorithm graph libraries

我正在寻找一个库来操作动态图。我有一个模拟,在对图的结构进行一些更改(添加和删除边,在无向图上,所有边具有相同的权重)之后,我必须重复计算图的平均测地线长度。

我在我制作的 igraph 上使用了一个快速的 C++ 包装。igraph 用于静态图形,因此每次更改图形时,我都会从头开始重新计算测地线距离。这是一个蒙特卡罗模拟,所以我必须这样做数百万次才能恢复一些统计数据。它开始变得非常缓慢。

所以我寻找带有动态图算法的库,它可以在我删除或添加一条边后重新计算更新平均长度。我找到了一些关于这个主题的论文,但我真的不是专家(我只是一个物理学家,我只是偶然在一个问题上使用图表......我几乎没有数据结构和算法的知识)所以我可以甚至不读论文,更不用说实现算法了。

我发现这个库 LEDA (http://www.algorithmic-solutions.com/leda/) 似乎有一个动态图扩展,但它似乎没有维护(下载免费版本的链接已损坏)并且它是专有的.

有没有其他选择?我正在寻找 C/C++ 库。如果必须的话,也许是 Haskell,我绝对绝望。

ant*_*oft -1

你看过Boost Graph Library吗

我自己没有使用过它,但作为 Boost 的一部分,您可以期望它具有非常高的质量,但它需要一定程度的 C++ 专业知识。