Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Apellido 2
Apellido 2
CodSIS: 201809654
return 0;
return Math.max(alturaPrimerHijo,
public boolean vacio() {
alturaHijosRestantes) + 1;
return dato == null;
}
}
}
}
public T getDato() {
return res;
return dato;
}
}
}
public boolean eliminar(T dato) {
if (!hijos.isEmpty()) {
public void reemplaza(T dato, T nuevoDato) {
ArbolN<T> primerHijo = hijos.get(0);
if (dato.equals(dato)) {
if (primerHijo.getDato().equals(dato)) {
dato = nuevoDato;
hijos.remove(0);
}
return true;
} else if (primerHijo.eliminar(dato)) {
if (!hijos.isEmpty()) {
return true;
ArbolN<T> primerHijo = hijos.get(0);
}
if (primerHijo.getDato().equals(dato)) {
primerHijo.reemplaza(dato, nuevoDato);
ArbolN<T> hijoRestante = new ArbolN<>(null);
} else {
hijoRestante.getHijos().addAll(hijos.subList(1,
hijos.size())); ArbolN<T> hijoRestante = new ArbolN<>(null);
hijoRestante.getHijos().addAll(hijos.subList(1,
hijos.size()));
return eliminarRecursivo(hijoRestante, dato);
hijoRestante.reemplaza(dato, nuevoDato);
}
hijos.subList(1, hijos.size()).clear();
return false;
hijos.addAll(hijoRestante.getHijos());
}
}
}
private boolean eliminarRecursivo(ArbolN<T> arbol, T
dato) { }
if (arbol.vacio()) { }
return false;
if (primerHijo.getDato().equals(dato)) {
arbol.getHijos().remove(0);
return true;
} else if (primerHijo.eliminar(dato)) {
return true;