我希望您能帮我解决关于图形/树的一些技术问题。
我试图显示系统中对象的创建情况。 这实际上是一种树形结构。
这里有一些有趣的要求。
a) 一个节点可以有很多子节点,比如20个或更多。 即一个库可被多个对象使用。
b) 一个子节点可以有很多父节点,比如多达20个。 即许多库被一个过程或对象使用。
c) 一个特定的节点可以出现在多个位置。 即一个通用的打印或日志函数在许多过程中被调用。
注意:这只是一个技术上的示例,我相信您会理解。 这不是我需要建模的问题。不需要讨论它。
当我思考它时,我意识到它不是一个简单的二叉树或链表。
1) 我应该使用什么样的数据结构来保存所有的数据?
2) 如何在Java中生成这样的图形?
3) 有哪些自由开源的绘制此类树状图的软件呢? 例如Neo4j
也许以以下格式: - 作为一棵树,有根、干、枝和叶子? - 像现在看到的社交网络图一样,以根节点为中心?
4) 有关这个主题的好网站或教程吗?
非常感谢!