C/Visual C - lista en c

 
Vista:

lista en c

Publicado por Rober (7 intervenciones) el 12/12/2006 13:56:06
Tengo un problema parausar listas y recursividad en c, por favor, si alguien tiene, puede subir algun ejemplo para hacer esto. Particularmente para cargar e imprimir las listas
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:lista en c

Publicado por Fran (122 intervenciones) el 13/12/2006 18:01:06
depende q tipo de listas estes manejando... me explico? queres una lista enlazada, doblemente enlazada, depende tambien estas tratando de implementar algo especifico con esa lista? qres talvez una cola o una pila? para q necesitas recursividad?
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:lista en c

Publicado por Fran (122 intervenciones) el 13/12/2006 18:03:53
ah, en cuanto a ejemplos, si me escribis a mi mail (el q esta lineas arriba) te puedo dar algun ejemplo de recursividad y uso de listas, pero depende cuan avanzado estes en C
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:lista en c

Publicado por Jesus Oliver (1 intervención) el 14/12/2006 11:49:34
Vamos hombre, dile algo al publico :-)

Recursividad con listas :

Creacion lista = null

esVacia (lista) : booleano
devolver lista=null

Dato(lista) : dato
devolver lista.dato

proc buscar (lista,elemento) : Algo (depende, puedes quere solo saber si esta, la posicion, algun otro valor porque sea un registro, etc...)
si no esVacia(lista)
si Dato(lista)==elemento
devolver algo
sino
buscar(lista.siguiente, algo)
fin proc

proc insertar(lista, dato)
depende de donde, si la lista es ordenada deberas buscar la posicion anterior y enlazar para esto es muy util usar un anillo o una lista con enlace a siguiente o anterior,
si es una pila sera al principio, no es necesaria recursion,
si es una cola al final, recorres hasta que el siguiente sea null y creas ahi ( si esVacia(lista.siguiente) insertar)

proc eliminar(lista, dato)
igual que el anterior, pero debes mantener las referencias para el anterior y el siguiente de forma obligatoria, es como insertar en ordenado pero al reves.

estos son los basicos. Consejo ante problemas de recursividad : busca el caso base!
la recursividad se aplica SOLO cuando se reduce el proceso hasta llegar a un caso (o varios) en el que sabemos como actuar.

Saludos!
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