• Jueves 3 de Julio de 2025, 18:29

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Temas - Conti

Páginas: [1]
1
Diseño de Algoritmos / Arboles Y Nodos Hojas Inciales
« en: Sábado 3 de Marzo de 2007, 13:19 »
Hola! ^^
Tengo un problema con cierto algoritmo.Veamos:
Dado un árbol binario(no ordenado), eliminar todos los nodos hojas iniciales, es decir aquellos que que son hojas en el momento que me dan el árbol.
El archivo que adjunto, es un dibujito para verlo mas claro.(perdón me ha salido un poco cutre :lol: )

Tendría que borrar los que estan en rojo, ya ya esta.
El problema reside en que cada vez que intento diseñar el algoritmo,simepre me sale una solución recursiva que ser carga todo el árbol,además de los que tiene que eliminar,pero que elimine todo el arbol no forma parte del juego  :blink: .
¿una paqueña pista porfi?  :(
Continuaré mi batalla por sacarlo :lightsabre:


ps:reutilizo muchos métodos del tipo abstracto árbol binario.(como recorrido preorden,etc)
Gracias ^^.

2
C/C++ / [c]puntero A Cadena De Caracteres
« en: Domingo 19 de Noviembre de 2006, 17:36 »
Saludos! :D
aunque sea mi primer post, no pretendo que me hagan el programa entero,tengo una duda concreta :).
Estoy haciendo un programita de inicio a C:
-Coger el nombre d eun fichero por linea de argumentos(solucionado)
-Leer lineas de caracteres(aqui estoy)
-Guardar en el fichero que he nombrado , las lineas leidas(si consigo el anterior,ya tengo este)

Os pongo el código que llevo:

Código: Text
  1.  
  2. #include<stdio.h>
  3. #include<math.h>
  4. #include<stdlib.h>
  5. #include<string.h>
  6. #define MAXLINE 80
  7.  
  8. main(int argc, char *argv[]){
  9.   char* nombre_fichero=argv[1];
  10.  
  11.   char linea[MAXLINE];
  12.   char *lineas[10];
  13.  
  14.   int seguir=1;
  15.   int i=0;
  16.   int j=0;
  17.  
  18.   while(seguir){
  19.    
  20.    
  21.     lineas[i]=gets(linea);
  22.     if(linea[0]=='\0'){
  23.       seguir=0;
  24.     }
  25.     printf("%s\n",lineas[i]);
  26.      
  27.      
  28.     i++;
  29.   }printf("%s\n",lineas[0]);
  30.  
  31. }
  32.  
  33.  
  34.  
Me voy directo al while:
-guardo en la primera posicion del puntero la primera linea
-si empieza por nuelo, sale del while
-imprimo lo que he leido, guardaod en la posicion i del puntero
-aumento el contador i.

¿veis ese printf despues dle while?
Ahí es donde tengo el problema, imprime en blanco como si no se hubiese guardado nada en esa posicion.Es el mismo printf que esta dentro del while, pero estando fuera me imprime en blanco y estando dentro hace su función.
Me gustaría saber porqué sucede eso, si es psible, gracias.  :hola:

Páginas: [1]