1. Implemente la estructura rep_coleccionTGrupos

1. Implemente la estructura rep_coleccionTGrupos

de Federico Rivero -
Número de respuestas: 12

Dudas sobre el punto 1

En respuesta a Federico Rivero

Re: 1. Implemente la estructura rep_coleccionTGrupos

de Emiliano Martín Díaz Menéndez -
Hola, no he terminado de entender la implementación y funcionamiento de los cabezales ¿los implemento como un struct separado? y ¿como los llamaría mas adelante?

Desde ya muchas gracias.
En respuesta a Emiliano Martín Díaz Menéndez

Re: 1. Implemente la estructura rep_coleccionTGrupos

de Nestor Rocchetti -
Buenos días Emiliano, cómo estás?

El objetivo de usar el cabezal es que no tengas que agregarle nada al struct de grupo para poder implementar la lista de grupos. Desde el cabezal luego se puede mantener una referencia al grupo.

Saludos!
En respuesta a Nestor Rocchetti

Re: 1. Implemente la estructura rep_coleccionTGrupos

de Emiliano Martín Díaz Menéndez -
Hola profesor buen día

Gracias por la respuesta anterior pero me entro una duda mas ¿tendría que definir el cabezal apuntándolo a TcolececcionTGrupos?

Muchas gracias.
En respuesta a Emiliano Martín Díaz Menéndez

Re: 1. Implemente la estructura rep_coleccionTGrupos

de Nestor Rocchetti -
Buenos días Emiliano,

El cabezal es de tipo colección. En ese cabezal tendrías que tener una referencia al grupo.

Saludos!
En respuesta a Nestor Rocchetti

Re: 1. Implemente la estructura rep_coleccionTGrupos

de Gonzalo Javier Diaz Ferreira -

Buenas, ¿Cómo están?


Me está costando entender la forma de trabajo con "cabezal"... me conviene inicializarlo en crearColeccion?

Porque si la coleccion está vacía debería hacer una referencia a un grupo vacío al igual que sus punteros, es correcto así? o lo estoy entendiendo mal?


Consulto esto porque pude insertar, y al momento de liberar me genera alguna fuga (seguramente por el mal manejo al inicio).


Espero su respuesta. 

Gracias

Saludos!

En respuesta a Gonzalo Javier Diaz Ferreira

Re: 1. Implemente la estructura rep_coleccionTGrupos

de Federico Rivero -

Hola Gonzalo!

La implementación que se presenta en el teórico para la lista doblemente encadenada no tiene punteros al grupo en el cabezal, solo dos punteros a un nodo interno de un tipo definido en el .cpp. Lo podés ver en la diapositiva 94 del teórico:

https://eva.fing.edu.uy/pluginfile.php/106170/mod_resource/content/9/Punteros_estructuras_lineales.pdf

Saludos,

        Federico

En respuesta a Federico Rivero

Re: 1. Implemente la estructura rep_coleccionTGrupos

de Fã‰Lix Michel Jure Altuna -

Buenas!

Tengo problemas para definir la estructura de los cabezales y las listas.

Se supone que tiene que ir todo en la misma estructura?

Intenté hacerlo por separado y desde el IDE no tengo ningún tipo de error al implementar las funciones,sin embargo el compilador no me reconoce los tipos..

("error : 'rep_NodoDoble' no nombra a un tipo")

Evidentemente algo no estoy entendiendo.

Gracias!

En respuesta a Federico Rivero

Re: 1. Implemente la estructura rep_coleccionTGrupos

de Tomás Martinez Diaz -
Buenas, no he terminado de comprender la implementacion de cabezal, vi la diapositiva 94 del teorico pero aun asi me siguen saltando muchos errores por ejemplo a la hora de crear una coleccion vacia, hay que poner algo como typedef struct cabezal *TColeccionTGrupos; tal como teniamos en el practico o no es asi?

Espero su respuesta.
Gracias.
En respuesta a Tomás Martinez Diaz

Re: 1. Implemente la estructura rep_coleccionTGrupos

de Pablo Andres Balliva Costa -

Fijate bien la letra:

Implemente la estructura rep_coleccionTGrupos que permita almacenar una lista doblemente enlazada. [...] recomendamos que la representación sea mediante un cabezal con un puntero al nodo inicial y otro al nodo final. En este sentido, se debe definir además una representación auxiliar para los nodos de la lista doblemente enlazada, que tengan un elemento TGrupoABB, un puntero a un nodo siguiente y uno a un nodo anterior.

O sea que el struct rep_coleccionTGrupos, va a tener adentro los punteros a los nodos inicial y final, y no va a formar parte de la lista enlazada. Este es el cabezal y va a haber solo uno por colección. El .h se refiere a este struct cuando define typedef struct rep_coleccionTGrupos *TColeccionTGrupos;.

Por otra parte, hay que definir una representación auxiliar (struct nodoDoble y luego typedef struct nodoDoble *nodoTGrupos;) para representar los nodos de la lista como pide la letra. Esos sí se enlazan y va haber tantos como grupos tenga la lista (y alguno más si usás una variante con dummy, como en la p. 93 del teórco).

Otra cosa, los typedef se hacen (generalmente) al principio del cpp y nunca adentro de una función.