本文介绍了图/网络数据结构的 Java API 列表的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

有哪些好的 Java API 可以将图(边/节点)用作数据结构?

What are some good Java APIs for working with graphs (edges/nodes) as data structures?

请在此 wiki 的评论中添加对类似 SO 问题的引用.请直接编辑此 wiki 条目中的列表.请添加您添加的项目的摘要描述作为答案(每个答案一个项目).

Please add references to similar SO questions in comments to this wiki. Please edit the list in this wiki entry directly. Please add summary description of your added projects as answers (one project per answer).

推荐答案

为了我的硕士论文,我在网上搜索了很多 Java Graph Library.我建议您使用以下框架:

I searched a lot for Java Graph Library in the web for my MS thesis.I suggest you the following frameworks:

  1. GraphStream:它有非常简单的 API 和大量的算法.它提供了许多图形结构(有向、无向、多图等)和许多可视化工具.
  2. JUNG:这个框架已经存在一段时间了,因此它具有强大且经过良好测试的功能.上次发布是在 2010 年,所以语法有点旧.
  1. GraphStream: it has very simple API and it's plenty of algorithms. It offers many graph structures (directed, undirected, multigraph, ... ) and many visualisation tools.
  2. JUNG: this framework has been around for a while, so it has robust and well-tested features.Last release was in 2010, so the syntax is quite a bit old.

这两个框架都有很多算法和一个可视化工具.

Both the frameworks have many algorithms and a visualisation tool.

如果你关心内存和性能,而你只需要图数据结构(没有算法,没有可视化),我建议 AuroraGraphManager,这是我实现的图形数据结构,也是我论文的一部分.我上面建议的框架并不适合我,因为我必须处理相当大的图(最多 3 亿条边).

If you are concerned about memory and performance, and you just need the graph data structure (no algorithms, no visualisation), I would suggest AuroraGraphManager, which is the graph data structure I implemented and part of my thesis. The frameworks I suggested above weren't good for me because I had to deal with quite big graphs (up to 300 million edges).

希望能帮到你!

这篇关于图/网络数据结构的 Java API 列表的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

07-30 05:16