Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package prog3.parciales;
- import prog3.arbol.general.ArbolGeneral;
- import prog3.listagenerica.ListaGenerica;
- import prog3.listagenerica.ListaGenericaEnlazada;
- public class ProcesadorDeRed {
- public double procesadorDeRed(ArbolGeneral<Double> arbol){
- ListaGenerica<Double> sumas = new ListaGenericaEnlazada<Double>();
- double camino=0;
- int [] cant_hojas={0};
- int nivel =0;
- contar(arbol,sumas,nivel,camino,cant_hojas);
- double total=0;
- for(int i=0; i< sumas.tamanio(); i++){
- total=total+sumas.elemento(i);
- }
- double rta=total/cant_hojas[0];
- return rta;
- }
- private void contar(ArbolGeneral<Double> arbol, ListaGenerica<Double>sumas,int nivel,double camino,int[]cant_hojas){
- if(arbol.esHoja() && (nivel >= 3)){
- sumas.agregarFinal(camino);
- cant_hojas[0]=+1;
- }
- else{
- ArbolGeneral<Double> a = arbol;
- ListaGenerica<ArbolGeneral<Double>> listaDeHijos= a.getHijos();
- listaDeHijos.comenzar();
- while(!listaDeHijos.fin()){
- ArbolGeneral<Double> prox = listaDeHijos.proximo();
- nivel=+1;
- camino=+prox.getDatoRaiz();
- contar(prox,sumas,nivel,camino,cant_hojas);
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement