martes, 2 de junio de 2015

LISTAS DOBLEMETE ENLAZADAS

DEFINICIÓN

Las listas doblemente enlazadas son un tipo de lista lineal en la que cada nodo tiene dos punteros, uno que apunta al nodo siguiente, y el otro que apunta al nodo anterior.

Las listas doblemente enlazadas 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 nodo de 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.

El puntero anterior del primer elemento debe apuntar hacia NULL (el inicio de la lista). 
El puntero siguiente del último elemento debe apuntar hacia NULL (el fin de la lista). 

Para definir un elemento de la lista será utilizado el tipo struct
El elemento de la lista contendrá un campo dato, un puntero anterior y un puntero siguiente

Los punteros anterior y siguiente deben ser del mismo tipo que el elemento, de lo contrario no van a poder apuntar hacia un elemento de la lista. 
El puntero anterior permitirá el acceso hacia el elemento anterior mientras que el puntero siguiente permitirá el acceso hacia el próximo elemento. 


DECLARACIÓN

struct nodo{
  
       int valor2;  
       struct nodo *siguiente;
       struct nodo *anterior;
};

typedef struct nodo *TipoLista;

CODIGO LISTAS DOBLEMENTE ENLAZADA

No hay comentarios:

Publicar un comentario