我目前正致力于构建具有预订结构的通用树。但是,由于我的树可以有多个子节点,我需要创建一个包含节点的列表,并使该内部节点指向下一个列表。 我想知道我是否可以在Java上构建这种结构 如果我能。我可以将单个节点定向到代码中的DoublyLinkedList结构吗?
这是我在Tree类中的Node类(代码分数)
class Tree<E> {
//single node structure
private static class Node <E> {
private E e;
private Node<E> parentNode;
private LinkedNode<E> childList;
public Node(E e, Node<E> p, LinkedNode<E> n) {
this.e = e;
this.parentNode = p;
this.childList = n;
}
}
//list structure to store nodes
private static class LinkedNode<E> { //<- problem1
private Node<E> parentNode;
private Node<E> nextSibling;
}
private E root;
private int size = 0;
}
我的代码的问题是在LinkedNode部分我必须使对象类型为Node而不仅仅是E,否则它将不包含节点信息。那么,有什么办法可以做到这一点吗?
答案 0 :(得分:0)
class Tree<E> {
//root of the tree
private Node root;
//single node structure
private static class Node <E> {
//Store data of the node
private E e;
//store the child in an ArrayList
//Each child will be represented by Class Node itself
private ArrayList< Node<E> > childList;
}
private int size = 0;
}
我认为,您是否正在尝试实施通用树。这就是我将如何做到的。 干杯!