如何使用networkx算法与我的自定义图形数据结构



我有一个图形数据库与Gremlin查询引擎。我不想改变那个API。这个库的重点是能够研究不能完全留在内存中的图形,并通过不返回到虚拟内存来最大化速度。

查询引擎是懒惰的,它不会获取一个边或顶点,直到用户需要或请求。否则,它只使用索引遍历图。

Networkx有另一个API。我可以做些什么来重新使用我的图的networkx图算法实现?

你正在谈论扩展你的图形API。

  • 希望代码从一个实现转换到另一个实现,在这种情况下,从算法部分复制粘贴可能适合您。(先检查许可证)
  • 如果你想继续使用现有的代码,你可以做一个中间层或适配器类来帮助解决这个问题。
  • 如果源代码没有对齐,那么NetworkX在帮助页面和代码本身的底部有大量关于所使用的算法和基础数学的注释。

对于未来:也许您可以将其开源,并吸引那些将遍历引擎视为一项优秀工程的人。在这种情况下,您将在维护/扩展您的工作方面得到帮助。好运。

最新更新