Revista Ejercicios de Grafos Revista | Page 9

EJERCICIO 7 Continuación: #include ˂stdio.h˃ #include ˂conio.h˃ #include ˂stdlib.h˃ #include ˂string.h˃ char *postorden; char *inorden=”IABEGLDCFMKHJ”; char *preorden=”GEAIBMCLDFKJH”; void post(char *pre, char *in, char *posto, int n) { Int longizq; If(n!=0) { Posto[n-1]=pre[0]: Longizq=strchr(in,pre[0])-in; Post(pre+1, in, posto, longizq); Post(pre+1+longizq, in+1+longizq,posto+longizq,n-1-longizq) } } int main(int arg, char *argv[]) { Int aux; aux=strlen(preorden); postorden=(char*)malloc(aux*sizeof(char)); if (postorden) { Printf(“El recorrido en preorden es: %s\n”, preorden); Printf(“El recorr ido en inorden es: %s\n”, inorden); Post(preorden, inorden, postorden, aux); Postorden[aux]=’\0’; Printf(“El recorrido en postorden es:%s\n”,postorden); Free(postorden); } Else { Fprintf(stderr, “Error: no hay memoria\n”); Return 1; } Return 0; PAGINA 7