Please enable JavaScript.
Coggle requires JavaScript to display documents.
TAD- LISTA CIRCULAR-MULTI,LISTA. :check: - Coggle Diagram
TAD- LISTA CIRCULAR-MULTI,LISTA. :check:
Lista Circular :red_flag: Una lista circular es una lista lineal en la que el último nodo a punta al primero.
En algunas listas circulares se añade un nodo especial de cabecera, de ese modo se evita la única excepción posible, la de que la lista esté vacía.
El nodo típico es el mismo que para construir listas abiertas:
Los tipos que definiremos normalmente para manejar listas cerradas son los mismos que para para manejar listas abiertas:
tipoNodo es el tipo para declarar nodos, evidentemente.
-
Lista es el tipo para declarar listas, tanto abiertas como circulares. En el caso de las circulares, apuntará a un nodo cualquiera de la lista.
A todos los efectos, las listas circulares son como las listas abiertas en cuanto a las operaciones que se pueden realizar sobre ellas:
-
-
-
Moverse a través de la lista, siguiente.
El único caso especial a la hora de insertar nodos en listas circulares es cuando la lista esté vacía.
-
Multi-Lista :red_flag: Conjunto de nodos en que algunos tienen más de un puntero y pueden estar en más de una lista simultáneamente.
Para cada tipo de nodo es importante distinguir los distintos campos puntero para realizar los recorridos adecuados y evitar confusiones.
Dos nuevos tipos correspondientes a los nodos para cada clase de entidad, que junto con la información propia de la entidad incluye los punteros necesarios para mantener la estructura.
-
Una estructura para agrupar los objetos de cada tipo de entidad (Array, Lista,Árbol, Tabla Hash, ...).
Un TDA Nodo Relacion que incluye un puntero por cada lista así como información propia de la relación
Un nodo Multilista que engloba los distintos tipos de nodos (entidad A, entidad B y relación). El tipo de dato para construir esto es el registro variante
-