Я работаю над своей диссертационной работой, имеющей отношение к искусственному интеллектуальному домену.Древовидное представление в java
Я хочу создать систему рекомендаций в реальном времени, поэтому мне нужно представлять решения с деревом.
Мой главный вопрос: как я могу эффективно представлять это дерево? Я хочу упомянуть, что дерево будет проходить как снизу вверх, так и снизу. Также дерево не является двоичным, а узла, который у него есть, довольно много (более 100).
Сейчас у меня есть создать класс узла, как выше:
public class node {
private String nodeName;
private expectedValue ev;
private boolean isLeaf;
private boolean isRoot;
private List<node> listOfChildren = new ArrayList<node>();
private node parent;
public node(String nodeName) {
super();
this.nodeName = nodeName;
}
public node(String nodeName, boolean isLeaf, boolean isRoot, List<node> listOfChildren, node parent) {
super();
this.nodeName = nodeName;
this.isLeaf = isLeaf;
this.isRoot = isRoot;
this.listOfChildren = listOfChildren;
this.parent = parent;
}
public void initializeNode(boolean isLeaf, boolean isRoot, List<node> listOfChildren, node parent) {
this.isLeaf = isLeaf;
this.isRoot = isRoot;
this.listOfChildren = listOfChildren;
this.parent = parent;
}
//getter and setter here......
}
Но я считаю, что это не самый эффективный способ представить дерево ....
Итак, что такое эффективный способ представления дерева в Java и есть ли способ создать дерево динамически или мне нужно инициализировать его по одному узлу?
Спасибо!
я помечено как «слишком широки»/«мнение, основанное», как нет правильного ответа на ваш запрос. Это также сильно зависит от точных требований дерева. Btw, вам не нужно «isLeaf» (listOfChildern.size() == 0) или «IsRoot» (parent == null). – Reinard
Почему вы «верите, что это не самый эффективный способ представления дерева»? Каковы некоторые из проблем, которые вы видите с ним? – Dima
Возможный дубликат [Реализация дерева в Java (корень, родители и дети)] (http://stackoverflow.com/questions/19330731/tree-implementation-in-java-root-parents-and-children) – RobAu