public static int ContarNodos(NodoExt nodo) { if (nodo.Hijos == null) { return(1); } int nietos = 0; for (int i = 0; i < nodo.Hijos.Count(); i++) { nietos += ContarNodos(nodo.Hijos[i]); } return(nietos + 1); }
public static void ImprmirArbolMultiplesHijos(NodoExt nodo) { Console.WriteLine(nodo.Nombre); if (nodo == null) { Console.WriteLine("El arbol que deseas imprimir no ha sido creado correctamente"); } if (nodo.Hijos == null) { Console.WriteLine(nodo.Nombre); } for (int i = 0; i < nodo.Hijos.Count(); i++) { ImprmirArbolMultiplesHijos(nodo.Hijos[i]); } }
public static int ContarNiveles(NodoExt nodo) { if (nodo.Hijos.Count() == 0) { return(0); } int niveles = 0; for (int i = 0; i < nodo.Hijos.Count(); i++) { if (nodo.Hijos.Count() > 0) { niveles = ContarHojas(nodo.Hijos[i]); niveles++; } } return(niveles); }
public static int ContarHojas(NodoExt nodo) { if (nodo == null) { return(0); } int hojas = 0; if (nodo.Hijos == null) { return(1); } for (int i = 0; i < nodo.Hijos.Count(); i++) { hojas += ContarHojas(nodo.Hijos[i]); } return(hojas); }
public static int ContarHojas(NodoExt actual) { if (actual == null) { return(0); } if (actual.Hojas == null) { return(2); } int nietos = 0; for (int i = 0; i < actual.Hojas.Count(); i++) { nietos += ContarNodos(actual.Hojas[i]); } return(nietos + 2); }