我为自己写了一个快速树和节点类(没有太花哨,不需要太多)。 我有一个可变数量的下一级节点,我为这些使用了一个ArrayList。 它的工作原理应该是这样的,唯一的问题是toString()方法。 例如:我设置了一堆数字。显示树中每片树叶的整个路径
- 0是根
- 0有孩子1,2,3
- 2有儿童2.4和2.5
现在,当我打印出来的树,这就是我得到: (斜线应该是有)
- /0/1
- /2/2.5
- /2.4
- /3
什么,但是我想是这样的:
- /0/1
- /0/2/2.5
- /0/2/2.4
- /0/3
这是我的toString():
public String toString() {
String all = "";
for (Node<T> node : nextNodes) {
all += node.toString();
if (node.isLeaf()) {
all += "\n";
}
}
return "/" + this.getNodeContent().toString() + all;
}
难道有人请告诉我,为了每次从根部走路,我必须改变什么?谢谢!
欢迎您! http://en.wikipedia.org/wiki/Tree_traversal可以帮助你吗? –