Este documento describe las listas enlazadas, incluyendo su definición, características y tipos. Explica que una lista enlazada es una estructura de datos dinámica donde cada elemento apunta al siguiente. Detalla los tres tipos principales de listas: simples, doblemente ligadas y circulares. Además, cubre las operaciones básicas como inserción, eliminación y acceso en listas enlazadas.
2. Unidad III
3.1 Definición de listas
• Características
• Terminología
3.2 Tipos de Listas
• Simples
• Doblemente ligadas
• Circulares
3.3 Construcción y operación de listas
• Sintaxis
• Operaciones
Inserción
Eliminación
Acceso
3. Definición de Listas
La lista enlazada es un TDA que nos permite almacenar datos de una
forma organizada, al igual que los vectores pero, a diferencia de estos,
esta estructura es dinámica, por lo que no tenemos que saber "a priori"
los elementos que puede contener.
En una lista enlazada, cada elemento apunta al siguiente excepto el
último que no tiene sucesor y el valor del enlace es null. Por ello los
elementos son registros que contienen el dato a almacenar y un enlace
al siguiente elemento. Los elementos de una lista, suelen recibir
también el nombre de nodos de la lista.
4. Características
Las listas enlazadas permiten inserciones y eliminación de nodos
en cualquier punto de la lista en tiempo constante, pero no
permiten un acceso aleatorio.
Existen diferentes tipos de listas enlazadas: Listas enlazadas
simples, listas doblemente enlazadas, listas enlazadas circulares
y listas enlazadas doblemente circulares. Pueden ser
implementadas en muchos lenguajes.
Lenguajes tales como Lisp y Scheme tiene estructuras de datos
ya construidas, junto con operaciones para acceder a las listas
enlazadas. Lenguajes imperativos u orientados a objetos tales
como C o C++ y Java, respectivamente, disponen de referencias
para crear listas enlazadas.
6. Terminología:
Una lista enlazada es una colección o secuencia de elementos
dispuestos uno detrás de otro, en la que cada elemento se conecta al
siguiente elemento por un “enlace” o “referencia”. La idea básica
consiste en construir una lista cuyos elementos, llamados nodos, se
componen de dos partes (campos): la primera parte contiene la
información y es, por consiguiente, un valor de un tipo genérico
(denominado Dato, TipoElemento, Info, etc.), y la segunda parte es
una referencia (denominado enlace o sgte) que apunta (enlaza) al
siguiente elemento de la lista.
8. Lista simple
Éstas listas tienen como característica que poseen nodos simples y sus
elementos pueden ser ingresados al principio o final de la lista. La impresión
de la lista se realiza en orden ascendente, desde el primer elemento hasta el
último.
El sistema se compone de 3 clases y la Principal que contiene el
método main:
•ListaSimple
•NodoSimple
•AplicaSimple
9. Éstas listas tienen como característica que poseen nodos dobles, que guardan
referencias de un nodo anterior y siguiente. Los elementos pueden ser
ingresados al principio o final de la lista. Se puede recorrer la lista en el sentido
hacia adelante o hacia atrás, permitiendo tener la impresión en orden normal u
orden inverso.
El sistema se compone de 3 clases y la Principal que contiene al método main:
•ListaDoble
•NodoDoble
•AplicaDoble
Lista doble
10. Lista circulares
Éstas listas poseen nodos simples. Tienen como característica que el último
nodo hace referencia como siguiente elemento al primer nodo de la lista,
generando así una secuencia circular. Los nuevos nodos pueden ser
ingresados al principio o al final de la lista, pero se debe seguir manteniendo la
estructura circular. La impresión de la lista se realiza en orden ascendente,
desde el primer elemento hasta el último.
El sistema se compone de 3 clases:
•ListaCircular
•NodoSimple
•AplicaCircular
13. Operaciones
Eliminación
La eliminación del primer elemento en realidad es muy sencilla ya que
solamente tenemos que recorrer un nivel abajo nuestra lista. la manera
de hacerlo es muy sencilla.