Thursday, July 14, 2011

Contenido extra. Listas enlazadas



Una lista enlazada es una serie de objetos que “saben" dónde se encuentra el siguiente miembro de la lista en la memoria del ordenador. El último miembro de la lista suele indicar que el miembro siguiente es un "null". Para lograrlo, cada objeto de la lista debe disponer de un miembro que pueda almacenar la ubicación en la memoria del siguiente objeto de la lista. Este tipo de listas son listas enlazadas simples, ya que el código puede desplazarse en la lista en una sola dirección. También existen listas enlazadas dobles. Una referencia al objeto de la lista suele indicar el comienzo de la misma.

Las listas enlazadas permiten almacenar información en posiciones de memoria que no sean contiguas. Estas listas para almacenar la información, contienen elementos llamados nodos. Estos nodos poseen dos campos uno para almacenar la información o valor del elemento y otro para el enlace que determina la posición del siguiente elemento o nodo de la lista.

Para inserta o borrar información no es necesario realizar un desplazamiento, para esto las listas cuentan con punteros o enlaces que contienen la posición o dirección del otro nodo de la lista. Por esta razón no es necesario que los elementos de la lista se almacenen en posiciones contiguas.

Cuando en una lista enlazada no hay ningún elemento quiere decir que la lista esta vacía, además existe un puntero de cabecera para acceder al primer nodo de la lista y un puntero nulo para determinar el ultimo elemento (nodo) de la lista.

Cuando utilizamos listas enlazadas podemos realizar la siguientes operaciones:
● Podemos añadir información a la lista insertando un nuevo nodo en un determinado lugar dentro de la lista.
● Podemos eliminar un nodo especifico dentro de la lista que contenga información.
● Podemos recuperar la información almacenada en un nodo especifico o encontrar la posición de un determinado nodo que contenga alguna información especifica.

Tipos de listas enlazadas
·         Listas simples enlazadas: Tiene un enlace por nodo. Este enlace apunta al siguiente nodo en la lista, o al valor Nulo o lista Vacia, si es el último nodo.


·         Listas doblemente enlazadas: Cada nodo tiene dos enlaces: uno apunta al nodo anterior, o apunta al valor Nulo o la lista vacia si es el primer nodo; y otro que apunta al siguiente nodo, o apunta al valor Nulo o la lista vacia si es el último nodo.



·         Listas enlazadas circulares: En una lista enlazada circular, el primer y el último nodo están unidos. Para recorrer una lista enlazada circular podemos empezar por cualquier nodo y seguir la lista en cualquier dirección hasta que se regrese al nodo original.



·         Listas de listas: El campo de datos de un nodo puede ser otra lista enlazada.



BIBLIOGRAFIA

1 comment: