C/Visual C - listas enlazadas, doblemente enlazadas y circulare

 
Vista:

listas enlazadas, doblemente enlazadas y circulare

Publicado por David Morales (2 intervenciones) el 26/11/2002 06:13:19
Necesito en C un el codigo de un programa que permita realizar operaciones elementales con
1. Listas enlazadas
2. Doblemente enlazadas
3. Listas Circulares

Esto es urgente y agradezco su ayuda
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:listas enlazadas, doblemente enlazadas y circul

Publicado por Tatiana (1 intervención) el 27/11/2002 21:10:25
Operaciones elementales Lista Enlazada
/* Declaracion de Lista Enlazada */
struct lista{
char nombre[20];
int edad;
struct lista *sig;
}*Lista;

/* Crea un nodo de la lista y lo inicializa */
struct lista *CreaNodo()
{
struct lista *ptr;

ptr = ( struct lista *) malloc( sizeof( struct lista ) );
memset( ptr->dato, \'\\0\' , 20 );
ptr->edad = 0;
ptr->sig = NULL;
return( ptr );
}

/* Destruye la lista enlazada en forma recursiva */
void DestruirLista( struct lista *p )
{
if( p == NULL )
return;

if( p != NULL )
DestruirLista( p->sig );

free( p );
}

/* Recorre la lista hasta el final y agrega un nuevo elemento */
void AgregaDatoALista( char *nom, int num )
{
struct lista *p, *q;

/* Si la lista esta vacía la crea e inicializa */
if( Lista == NULL )
Lista = CreaNodo();

p = Lista;
while( p != NULL )
{
q = p;
/* Si el ultimo nodo no tiene nada agrega los nuevos datos */
if( strncmp( p->nombre, \'\\0\' , 20 ) == 0 && p->sig == NULL )
{
strcpy( p->nombre, nom );
p->edad = num;
}
p = p->sig; /* Se mueve al siguiente registro */
}
q->sig = CreaNodo();
}

Rutealo para que lo entiendas
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:listas enlazadas, doblemente enlazadas y circul

Publicado por David Morales (2 intervenciones) el 28/11/2002 13:42:35
gracias por responder... aun me queda la duda de hacer listas dobles y circulares

;-)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:listas enlazadas, doblemente enlazadas y circul

Publicado por chapis (2 intervenciones) el 02/01/2003 19:09:55
tienes una lista circular en c++?? es que yo tengo y entiendo la lista en c. pero en c++ me lio. Tengo que hacer una lista circular en c++ donde cada nodo apunta a otra lista circular. Si me pudieses ayudar me harias un gran favor. Un saludo y gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar