Надеюсь, вы поможете мне с некоторыми техническими вопросами по графикам/деревьям.
Я пытаюсь отобразить создание объектов в системах. Это действительно древовидная структура.
Есть интересные требования.
а) У одного узла может быть много потомков. Скажем 20. Может больше. т.е. одна библиотека может использоваться многими объектами.
б) Дочерний узел может иметь много родителей. Скажем до 20. т.е. многие библиотеки используются одной процедурой или объектом
c) Конкретный узел может появляться более чем в одном месте. т.е. общая функция печати или ведения журнала вызывается во многих процедурах
Примечание. Это всего лишь пример в технических терминах, я надеюсь, вы поймете. Это НЕ проблема, которую мне нужно моделировать. Нет нужды это обсуждать.
Поразмыслив над этим, я понял, что это не простое двоичное дерево или связанный список.
1) В какой структуре данных я могу сохранить все данные?
2) Как я могу создать график этого в java?
3) Какое бесплатное графическое программное обеспечение с открытым исходным кодом может построить такое дерево? Такие как Neo4j
Возможно в форматах: - как дерево, с корнем, стволом, ветвями и листьями? - Нравятся те графики, которые вы видите сейчас, изображающие социальные сети, с корневым узлом в центре?
4) Какие-нибудь хорошие веб-сайты или учебные пособия по этому вопросу?
Большое спасибо!