Ver Mensaje Individual
  #1 (permalink)  
Antiguo 19/12/2010, 21:32
Avatar de ras_chalo
ras_chalo
 
Fecha de Ingreso: junio-2010
Mensajes: 369
Antigüedad: 14 años, 5 meses
Puntos: 6
Pregunta Como funciona esté código?... árbol binario

Hola que tal...bueno eh estado harto rato intentando de entender como funcionan los arboles binarios...capte algo pero no entiendo como pasarlo a código...

Encontre en la web estos códigos para insertar datos en el árbol:

Código C++:
Ver original
  1. struct arbol{
  2. int info;
  3. struct arbol *left;
  4. struct arbol *right;
  5. };
  6. typedef struct arbol nodetree;
  7. typedef nodetree *arbolptr;
  8. void insertar(arbolptr*L, int b);
  9.  
  10. void insertar(arbolptr*r,int x)
  11. {
  12. arbolptr pnuevo,panterior,pactual;
  13. pnuevo=(arbol*)malloc(sizeof(arbol));
  14.  
  15. if(pnuevo!=NULL)
  16. {
  17. pnuevo->info=x;
  18. pnuevo->right=NULL;
  19. pnuevo->left=NULL;
  20. panterior=NULL;
  21. pactual=*r;
  22. printf("%d",pnuevo->info);
  23. while(pactual!=NULL && x>pactual->info)
  24. {
  25. panterior=pactual;
  26. pactual=pactual->left;
  27. }
  28. if(panterior==NULL)
  29. {
  30. pnuevo->left=*r;
  31. *r=pnuevo;
  32. }
  33. else
  34. {
  35. panterior->left=pnuevo;
  36. pnuevo->left=pactual;
  37. }
  38. }
  39. }


Bueno y recurro hacia Ud. para que alguno me pueda ayudar a recorrer el código, indicándome mas o menos como funciona ... que la verdad entiendo la mitad =(

se que es algo tedioso, asi que les estaré muy agradecido si me ayudan.
Espero sus respuestas..de ante mano muchas gracias!