Hola, la verdad es que no termino de entender la estructura de la lista. Veo que se conectan de una forma muy compleja, no entiendo a donde apunta el nodo primero. Y como se maneja la posición dentro de la lista
Hola buenas tardes, a mi tambien me surgieron dudas respecto a la estructura de la lista indizada.
La letra dice que usemos el esquema de la lista doblemente encadenada, entonces para ver las posiciones habría que agregarle un campo a la estructura, como de la siguiente forma:
struct nodo_doble {
int elem ;
unsigned int pos;
nodo_doble * sig ;
nodo_doble * ant ;
};
typedef nodo_doble * lista ;
Yo use esta estructura para hacer las funciones pero no estoy segura si es así, o hay que agregar a la funciones un contador para poder llevar la cuenta de las posiciones.
Muchas gracias
Hola.
La estructura que propones es correcta.
Igualmente, te comento que en este caso con una lista doblemente enlazada sería suficiente. Lo que se debe hacer en cada función que recibe una posición p, es recorrer la lista hasta esa posición y hacer lo solicitado (insertar, remover, ver si el elemento existe).
Espero se entienda.
Saludos
Puede ser que te estés confundiendo con la estructura del Ejercicio 6?
Si es así, capaz que el video del Ejercicio 6 te ayuda con esto.
No muestra como es una lista indizada
Supongo que te referís a la figura 3 del práctico 3. El concepto de lista indizada refiere al comportamiento sobre la lista, más a a la estructura. Para el ejercicio 5, como plantean Matías y Alejandra unos post antes, el conteo de la posición de la lista lo podes hacer con una variable que no forme parte de la estructura. Esto no quita que se podría hacer una implementación donde la propia estructura mantenga indizadas las posiciones. En ese caso (ejercicio 5), el manejo de la posición se hace en forma explícita.
Sin embargo en el ejercicio 6, se propone una lista con manejo de posiciones implícito. En este no se asigna una posición fija los elementos, sino que el índice lo que indica es la posición actual (que va variando). Tomando como referencia esta posición es que se pueden ejecutar acciones sobre la lista. Para este tipo de manejo de posiciones, la propuesta de estructura de la figura 3 del práctico 3 es adecuada.
Espero haber aclarado, sino la seguimos.
Saludos
La lista indizada es un concepto de comportamiento que tiene varias posibles implementaciones.
Entendí, gracias!!
El mar, 31 may 2022 a las 20:05, Federico Andrade (vía FING) (<