Listas doblemente enlazadas
Las listas doblementeenlazadas no necesitan un nodo especifico para acceder a ellas, ya que presentan una gran ventaja comparada con las listas enlazadas y es que pueden recorrerse en ambos sentidos a partir de cualquier nodode la lista, ya que siempre es posible desde cualquier nodo alcanzar cualquier otro nodo de la lista, hasta que se llega a uno de los extremos.
La creación de las listas doblemente enlazadas se hacede igual manera que con las listas enlazadas, es decir a través de una estructura, la diferencia radica en que para esta tipo de lista doble se requiere otro enlace que apunte al nodo anterior. Heaquí la definición de la estructura llamada ListaDoble.
struct ListaDoble {
int dato;
struct nodo *siguiente;
struct nodo *anterior;
};
Representación gráfica de una lista doblemente enlazada
Elmovimiento a través de listas doblemente enlazadas es más flexible, ya que como se verá en esta lección las operaciones de búsqueda, inserción y borrado, también tienen algunas ventajas significativas frentea las listas enlazada"6.
Operaciones básicas con listas doblemente enlazadas
Nuevamente se tienen las mismas operaciones sobre este tipo listas:
Añadir o insertar elementos. Puede llevarse a cabo encualquier lugar de la lista.
Buscar o localizar elementos. Dada una característica especial.
Borrar elementos. Permite elegir el elemento a eliminar.
Moverse a través de la lista, siguiente yanterior.
Veamos el siguiente caso:
El nodo creado se desea integrar a la Estructura, por lo tanto se debe verificar la posición donde se quiere insertar y reordenar las referencias; en nuestro casoparticular, El nodo 5 cambiará su referencia hacia la dirección donde se encuentra el nodo 7
y posteriormente el nodo 4 cambia su referencia hacia el nodo 5.
Ahora Nodo 5 entrega su...
Regístrate para leer el documento completo.