Listas Circulares Doblemente Enlazadas
En una lista enlazada doblemente circular, cada nodo tiene dos enlaces, similares a los de la lista doblemente enlazada, excepto que el enlace anterior del primer nodo apunta al último y el
enlace siguiente del último nodo, apunta al primero. Como en una lista doblemente enlazada, las inserciones y eliminaciones pueden ser hechas desde cualquier punto con acceso a algún
nodo cercano.
La lista circular doble es una especie de lista enlazada “doblemente enlazada”, pero que posee
una característica adicional para el desplazamiento dentro de la lista, “ésta no tiene fin
” y
tiene 2 apuntadores a sí misma, el cambio radica en que el enlace anterior del primer nodo
apunta al último y el enlace siguiente del último nodo, apunta al primero.
.
Los operaciones básicas de una lista circular doble son:
∙ Insertar: inserta un nodo con dato x en la lista, pudiendo realizarse esta inserción al principio o final
de la lista o bien en orden.
∙
Eliminar: elimina un nodo de la lista, puede ser según la posición o por el dato.
∙
Buscar: busca un elemento en la lista.
∙
Localizar: obtiene la posición del nodo en la lista.
∙
Imprimir: imprime los elementos de la lista
En las listas circulares dobles, nunca se llega a una posición en la que ya no sea posible
desplazarse.
Cuando se llegue al último elemento, el desplazamiento volverá a comenzar desde el primer
elemento.
Aunque estructuralmente una lista circular doblemente enlazada no tiene ni principio ni fin, un puntero de acceso externo (cabecera) puede establecer el nodo apuntado que está en la
cabeza o al nodo final, y así mantener el orden como en una lista doblemente enlazada
Nodos cabecera (header nodes)
• La búsqueda y los algoritmos de ordenación se simplifican si se usan los llamados Nodos
cabecera, donde cada elemento apunta a ...
Regístrate para leer el documento completo.