Título: Arbol recursivo Publicado por: Snarky en 17 Mayo 2018, 13:57 pm Alguien me puede explicar este trozo de código recursivo?:
void mostrarArbol(Nodo * arbol, contador){ if(arbol == NULL){ return; } else{ mostrarArbol(arbol->der, contador+1); for( int i = 0; i<contador, i++){ cout << " "; } cout << arbol->dato << endl; mostrarArbol(arbol->izq, contador + 1); } } Título: Re: Arbol recursivo Publicado por: MAFUS en 17 Mayo 2018, 16:01 pm Mira, es muy fácil:
El dato tiene una estructura clásica de árbol binario Código: typedef struct _nodo { Y a partir de aquí se lee la función Código: void mostrarArbol(Nodo * arbol, unsigned contador){ mostrarArbol recibe el puntero a un tipo Nodo para no andar todos los datos de cada estructura, contador indicará la profundidad del nivel a que se encuentra (esto lo saco de más adelante como veremos). Código: if(arbol == NULL){ Código: else{ Código: for(int i=0; i<contador; i++){ Código: mostrarArbol(arbol->izq, contador + 1); |