Lista vinculada individualmente frente a la lista doblemente vinculada
La lista vinculada es una estructura de datos lineal que se utiliza para almacenar una recopilación de datos. Una lista vinculada asigna memoria a sus elementos por separado en su propio bloque de memoria y la estructura general se obtiene vinculando estos elementos como enlaces en una cadena. Una lista vinculada individualmente está compuesta por una secuencia de nodos y cada nodo tiene una referencia al siguiente nodo en la secuencia. Una lista doblemente vinculada contiene una secuencia de nodos en el que cada nodo contiene una referencia al siguiente nodo, así como al nodo anterior.
Lista vinculada individualmente
Cada elemento en una lista vinculada individualmente tiene dos campos como se muestra en la Figura 1. El campo de datos contiene los datos reales almacenados y el campo siguiente contiene la referencia al siguiente elemento en la cadena. El primer elemento de la lista vinculada se almacena como el jefe de la lista vinculada.
La Figura 2 muestra una lista vinculada individualmente con tres elementos. Cada elemento almacena sus datos y todos los elementos, excepto el último, almacene una referencia al siguiente elemento. El último elemento contiene un valor nulo en su próximo campo. Se puede acceder a cualquier elemento en la lista comenzando en la cabeza y siguiendo el siguiente puntero hasta que cumpla con el elemento requerido.
Lista doblemente vinculada
Cada elemento en una lista doblemente vinculada tiene tres campos como se muestra en la Figura 3. Similar a la lista vinculada individualmente, el campo de datos contiene los datos reales almacenados y el siguiente campo contiene la referencia al siguiente elemento en la cadena. Además, el campo anterior contiene la referencia al elemento anterior en la cadena. El primer elemento de la lista vinculada se almacena como el jefe de la lista vinculada.
La Figura 4 muestra una lista doblemente vinculada con tres elementos. Todos los elementos intermedios almacenan referencias a los primeros elementos anteriores y anteriores. El último elemento en la lista contiene un valor nulo en su campo siguiente y el primer elemento en la lista contiene un valor nulo en su campo anterior. La lista doblemente vinculada se puede atravesar hacia adelante siguiendo las siguientes referencias en cada elemento y de manera similar se puede atravesar hacia atrás utilizando las referencias anteriores en cada elemento.
¿Cuál es la diferencia entre la lista vinculada individualmente y la lista doblemente vinculada??
Cada elemento en la lista vinculada individualmente contiene una referencia al siguiente elemento en la lista, mientras que cada elemento en la lista doblemente vinculada contiene referencias al siguiente elemento, así como al elemento anterior en la lista. Las listas doblemente vinculadas requieren más espacio para cada elemento en la lista y las operaciones elementales, como la inserción y la eliminación, es más complejo ya que tienen que lidiar con dos referencias. Pero las listas de enlaces doblemente permiten una manipulación más fácil, ya que permite atravesar la lista en direcciones hacia adelante y hacia atrás.