Está en la página 1de 1

Estructuras de Datos II Curso 2008-09

Prctica 1 Entrada y salida de rboles binarios


1. Implementa un subprograma para leer desde la entrada estndar y en preorden los elementos de un rbol binario. Este subprograma Abin LeerAbin() debe construir y devolver el rbol. Para resolver este problema necesitamos hacer uso del TAD rbol binario con cualquiera de sus representaciones. Por tanto necesitamos crear un fichero de cabecera (.h) y otro con las implementaciones de las operaciones del TAD (.c) para alguna de las representaciones conocidas del TAD rbol binario. Se exige llegar a esta primera sesin con ambos ficheros implementados.

Pista: Implementa una funcin para leer desde la entrada estndar y en preorden los descendientes de un nodo n de un rbol binario A: void LeerDescendientesB (nodo n, Abin A); 2. Escribe un programa que lea un rbol binario desde la entrada estndar utilizando la funcin LeerAbin() y nos lo muestre por pantalla usando la funcin siguiente:
void ImprimirAbin (Abin A) { if (!ArbolVacioB(A)) { printf(Raz del rbol: %c\n, RecuperarB(RaizB(A), A)); ImprimirDescendientesB(RaizB(A), A); } else printf(rbol vaco); } void ImprimirDescendientesB (nodo n, Abin A) { if (HijoIzqdoB(n, A) != NODO_NULO) { printf(Hijo izqdo de %c, RecuperarB(n, A), : %c\n, RecuperarB(HijoIzqdoB(n, A), A); ImprimirDescendientesB(HijoIzqdoB(n, A), A); } if (HijoDrchoB(n, A) != NODO_NULO) { printf(Hijo derecho de %c, RecuperarB(n, A), : %c\n, RecuperarB(HijoDrchoB(n, A), A); ImprimirDescendientesB(HijoDrchoB(n, A), A); } }

También podría gustarte