将给定树的所有节点添加到ArrayList
的最佳方法是什么?
我应该在递归方法中将ArrayList作为参数传递吗?
我现在试着做一段时间,我的代码没有编译,请帮忙。
ArrayList<NodoN<T>> postOrder(boolean ignorarRaiz, ArrayList<T> lista){
for (int i = 0; i < nodos.size(); i++) {
ret = ret + nodos.get(i).postOrder(false, lista);
}
if (!ingnorarRaiz) {
lista.add(dato);
}
return dato;
}
答案 0 :(得分:1)
从您的方法名称看起来您想要在后期遍历您的树,所以我尝试类似:
ArrayList<NodoN<T>> postOrder(boolean ignorarRaiz, ArrayList<T> lista){
for (NodoN<T> nodo: nodos) {
nodo.postOrder(false, lista);
}
if (!ingnorarRaiz) lista.add(nodo);
return lista;
}
在添加了子树节点后,每个调用的节点资源管理器都会插入到列表中。