Как мне реализовать эту концепцию Tree Like в Java? - PullRequest
1 голос
/ 22 ноября 2011

Пожалуйста, посмотрите:

Tree Like architecture

Так что в основном у меня есть древовидная архитектура, которая на самом деле не является деревом, потому что корневой узел может быть или не быть доступным всегда.

Root связан со многими детьми, которые, в свою очередь, могут или не могут быть связаны с другими детьми. Все узлы на одном конкретном уровне или похожие объекты с разными идентификаторами в качестве идентификаторов.

Я думаю реализовать его как дерево, но тогда с большим набором данных может быть сложно найти конкретный узел. Или я могу создать один объект карты на каждом уровне и, основываясь на их ключе, я смогу найти их связь с родительским узлом, если он существует или нет ??

Или вы думаете, что есть какой-то лучший способ сделать это, потому что, если я возьму его в качестве дерева, оно будет расти случайным образом, плюс в его расширении у меня будет проблема, что у некоторых детей будет много родительских узлов, и это, вероятно, нет возможно в дереве ??

Пожалуйста, предложите какую-нибудь идею реализации?

Ответы [ 2 ]

2 голосов
/ 22 ноября 2011

Вы можете представить его в виде ориентированного графа: у каждого узла есть входящие ребра от его родителей и исходящие ребра для его потомков:

public class Node {
    private List<Object> parents;   // incoming
    private List<Object> children;   // outgoing
}
0 голосов
/ 22 ноября 2011

Возможно, вы захотите взглянуть на концепцию b-tree

...