Seguimos buscando a Arshak. Ayudanos compartiendo!
Encuesta no oficial de docentes
Resultados de la encuesta no oficial de docentes
Probaste el SIGA Helper?

Donar $100 Donar $200 Donar $500 Donar mensualmente


Enviar respuesta 
 
Calificación:
  • 0 votos - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5
Buscar en el tema
[Ayuda] AyED - Listas de Listas
Autor Mensaje
CimimUxMaio Sin conexión
Empleado del buffet
Sin estado :(
*

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 5
Agradecimientos dados: 5
Agradecimientos: 3 en 1 posts
Registro en: Oct 2017
Mensaje: #1
[Ayuda] AyED - Listas de Listas Dudas y recomendaciones Algoritmos y Estructuras de Datos
Buenas.
Necesito que alguien por favor me explique y muestre en código cómo se hace una lista de listas (listas cuyo campo info contenga un puntero a otra lista). Cuando me explican la parte teórica la entiendo perfectamente pero no logro llevarla a código...
Desde ya muchas gracias =)
29-11-2017 15:59
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
fav Sin conexión
Militante
Sin Estado, podría ser el nom...
***

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 93
Agradecimientos dados: 2
Agradecimientos: 26 en 15 posts
Registro en: Apr 2015
Mensaje: #2
RE: [Ayuda] AyED - Listas de Listas
Básicamente es esto que dijiste
Cita:listas cuyo campo info contenga un puntero a otra lista


Cita:Cuando me explican la parte teórica la entiendo perfectamente pero no logro llevarla a código...


Un poco general la pregunta =P Codeaste una lista común? con que parte o función estas teniendo problema ?
29-11-2017 16:19
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
CimimUxMaio Sin conexión
Empleado del buffet
Sin estado :(
*

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 5
Agradecimientos dados: 5
Agradecimientos: 3 en 1 posts
Registro en: Oct 2017
Mensaje: #3
RE: [Ayuda] AyED - Listas de Listas
(29-11-2017 16:19)fav escribió:  Básicamente es esto que dijiste
Cita:listas cuyo campo info contenga un puntero a otra lista


Cita:Cuando me explican la parte teórica la entiendo perfectamente pero no logro llevarla a código...


Un poco general la pregunta =P Codeaste una lista común? con que parte o función estas teniendo problema ?

Si, con las listas comunes no tengo problema. Tengo entendido que para las listas de listas tengo que usar 2 funciones. Una: IncertarOrdenado y otra IncertarOrdenadoSinRepetir. Con la 2da es con la que tengo el problema, no la sé codear, ni mucho menos usarla para armar la lista de listas.
29-11-2017 16:28
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
fav Sin conexión
Militante
Sin Estado, podría ser el nom...
***

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 93
Agradecimientos dados: 2
Agradecimientos: 26 en 15 posts
Registro en: Apr 2015
Mensaje: #4
RE: [Ayuda] AyED - Listas de Listas
Cita:Con la 2da es con la que tengo el problema, no la sé codear, ni mucho menos usarla para armar la lista de listas.

Mmm y que haría insertarOrdenadoSinRepetir en una lista de listas? si queres saber si una lista ya esta contenida en tu listaDeListas acordate que éstas las estás representando como punteros, entonces podes comparar si el campo info o data de algun elemento de tu listaDeListas (que es un puntero de lista) es igual al puntero que vas a agregar.

Si no sabes como codear insertarOrdenadoSinRepetir pensá que es igual a insertarOrdenado con la diferencia de que antes preguntas si el elemento ya existe dentro de la lista, algo asi:


void insertarOrdenadoSinRepetir (lista* lista, t_elemento elemento){
if(!contineElemento(lista, elemento)){
insertarOrdenado(lista, elemento);
}
}

bool contineElemento (lista* lista, t_elemento elemento){
t_nodo* aux = lista_obtener(lista, 0); // o lo que sea que uses para obtener el primer elemento de una lista
while(aux->siguiente!=NULL){
if(aux->info == elemento) return true;
aux = aux->siguiente;
}
return false;
}


Con una lista de lista tu "t_elemento" sería un puntero a una lista thumbup3
(Este mensaje fue modificado por última vez en: 29-11-2017 21:36 por fav.)
29-11-2017 21:27
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
[-] fav recibio 1 Gracias por este post
CimimUxMaio (30-11-2017)
CimimUxMaio Sin conexión
Empleado del buffet
Sin estado :(
*

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 5
Agradecimientos dados: 5
Agradecimientos: 3 en 1 posts
Registro en: Oct 2017
Mensaje: #5
RE: [Ayuda] AyED - Listas de Listas
Eso... Muchas gracias... creo que con eso puedo imaginarme por donde va la cosa...
30-11-2017 12:32
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
Gonz4_ Sin conexión
Empleado de Fotocopiadora
Sin estado :(
**

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 35
Agradecimientos dados: 17
Agradecimientos: 19 en 6 posts
Registro en: Nov 2017
Mensaje: #6
RE: [Ayuda] AyED - Listas de Listas
(29-11-2017 16:28)CimimUxMaio escribió:  
(29-11-2017 16:19)fav escribió:  Básicamente es esto que dijiste
Cita:listas cuyo campo info contenga un puntero a otra lista


Cita:Cuando me explican la parte teórica la entiendo perfectamente pero no logro llevarla a código...


Un poco general la pregunta =P Codeaste una lista común? con que parte o función estas teniendo problema ?

Si, con las listas comunes no tengo problema. Tengo entendido que para las listas de listas tengo que usar 2 funciones. Una: IncertarOrdenado y otra IncertarOrdenadoSinRepetir. Con la 2da es con la que tengo el problema, no la sé codear, ni mucho menos usarla para armar la lista de listas.

No, me parece que te estas confundiendo, por que(si no me equivoco) esas funciones son para LISTAS. Es decir, no importa si es una lista de una lista, o la misma lista principal que contiene sublistas.

Vos a insertarordenado, o insertarordenado sin repetir le pasas la lista y el campo info que queres incorporar.

Si vos queres insertar un elemento, por ejemplo, en la lista Dias, que esta dentro de la lista Meses lo que vas a hacer es pasarle a la función los parámetros listames->info.listadia y el info dia, ahora, si queres agregar un mes le vas a pasar listames y el info mes. No se si se entiende, en ambos casos pasas la lista. En el caso de agregar un dia(sublista), primero deberías chequear si existe el nodo mes, y si existe el nodo agregas el dia(pasarias la lista dia que esta dentro de la lista mes listames->info.listadia), sino deberías crear el nodo mes con el nodo día ya insertado y crear el nodo en la lista mes.

Que alguien me corrija si estoy equivocado, pero creo que es así. En todos los casos de listas, sublistas, arboles, y todo eso, te conviene siempre dibujar las estructuras de datos y usarlas como guía, ayuda bastante a no perderse.
30-11-2017 16:38
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
[-] Gonz4_ recibio 1 Gracias por este post
CimimUxMaio (30-11-2017)
CimimUxMaio Sin conexión
Empleado del buffet
Sin estado :(
*

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 5
Agradecimientos dados: 5
Agradecimientos: 3 en 1 posts
Registro en: Oct 2017
Mensaje: #7
RE: [Ayuda] AyED - Listas de Listas
(30-11-2017 16:38)Gonz4_ escribió:  
(29-11-2017 16:28)CimimUxMaio escribió:  
(29-11-2017 16:19)fav escribió:  Básicamente es esto que dijiste
Cita:listas cuyo campo info contenga un puntero a otra lista


Cita:Cuando me explican la parte teórica la entiendo perfectamente pero no logro llevarla a código...


Un poco general la pregunta =P Codeaste una lista común? con que parte o función estas teniendo problema ?

Si, con las listas comunes no tengo problema. Tengo entendido que para las listas de listas tengo que usar 2 funciones. Una: IncertarOrdenado y otra IncertarOrdenadoSinRepetir. Con la 2da es con la que tengo el problema, no la sé codear, ni mucho menos usarla para armar la lista de listas.

No, me parece que te estas confundiendo, por que(si no me equivoco) esas funciones son para LISTAS. Es decir, no importa si es una lista de una lista, o la misma lista principal que contiene sublistas.

Vos a insertarordenado, o insertarordenado sin repetir le pasas la lista y el campo info que queres incorporar.

Si vos queres insertar un elemento, por ejemplo, en la lista Dias, que esta dentro de la lista Meses lo que vas a hacer es pasarle a la función los parámetros listames->info.listadia y el info dia, ahora, si queres agregar un mes le vas a pasar listames y el info mes. No se si se entiende, en ambos casos pasas la lista. En el caso de agregar un dia(sublista), primero deberías chequear si existe el nodo mes, y si existe el nodo agregas el dia(pasarias la lista dia que esta dentro de la lista mes listames->info.listadia), sino deberías crear el nodo mes con el nodo día ya insertado y crear el nodo en la lista mes.

Que alguien me corrija si estoy equivocado, pero creo que es así. En todos los casos de listas, sublistas, arboles, y todo eso, te conviene siempre dibujar las estructuras de datos y usarlas como guía, ayuda bastante a no perderse.

Creo que te entendí. Ahora me quedó un poco más claro... lo que no dije es que esta lista de listas la necesitaba para resolver un ejercicio en el que, sin ir en detalles, si el nodo de la lista principal se repetía ==> agrego un nodo a la sublista. Gracias de todas formas =)
30-11-2017 17:04
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
Buscar en el tema
Enviar respuesta 




Usuario(s) navegando en este tema: 4 invitado(s)