You are on page 1of 10

UNIVERSIDAD TECNLOGICA DE TULA TEPEJI CAMPUS CHAPULHUACAN

Ing. Arturo Mendieta Hernndez


CHAPULHUCAN HGO, 26 DE SEPTIEMBRE DEL 2011

Agenda
4.1 Definicin de campos de enlace (apuntadores) 4.2 Listas 4.2.1 Listas ligadas simples 4.2.2 Listas doblemente ligadas 4.2.3 Listas ligadas circulares 4.2.4 Lista mltiplemente ligadas

LISTA ENLAZADA O ENCADENADA


Es una coleccin de elementos nodos, en donde cada uno contiene datos y un enlace o liga. Un nodo es una secuencia de caracteres en memoria dividida en campos (de cualquier tipo). Un nodo siempre contiene la direccin de memoria del siguiente nodo de informacin si este existe.

LISTA ENLAZADA O ENCADENADA


Un apuntador es la direccin de memoria de un nodo El campo liga, que es de tipo puntero, es el que se usa para establecer la liga con el siguiente nodo de la lista. Si el nodo fuera el ltimo, este campo recibe como valor NULL (vaco).

Operaciones en Listas Enlazadas


Las operaciones que podemos realizar sobre una lista enlazada son las siguientes: Recorrido. Esta operacin consiste en visitar cada uno de los nodos que forman la lista . Para recorrer todos los nodos de la lista, se comienza con el primero, se toma el valor del campo liga para avanzar al segundo nodo, el campo liga de este nodo nos dar la direccin del tercer nodo, y as sucesivamente. Insercin. Esta operacin consiste en agregar un nuevo nodo a la lista. Para esta operacin se pueden considerar tres casos:
Insertar un nodo al inicio. Insertar un nodo antes o despus de cierto nodo. Insertar un nodo al final.

Borrado. La operacin de borrado consiste en quitar un nodo de la lista, redefiniendo las ligas que correspondan. Se pueden presentar cuatro casos:
Eliminar el primer nodo. Eliminar el ltimo nodo. Eliminar un nodo con cierta informacin. Eliminar el nodo anterior o posterior al nodo cierta con informacin.

Bsqueda. Esta operacin consiste en visitar cada uno de los nodos, tomando al campo liga como puntero al siguiente nodo a visitar.

Listas Lineales
En esta seccin se mostrarn algunos algoritmos sobre listas lineales sin nodo de cabecera y con nodo de cabecera.

Una lista con nodo de cabecera es aquella en la que el primer nodo de la lista contendr en su campo dato algn valor que lo diference de los dems nodos (como : *, -, +, etc). Un ejemplo de lista con nodo de cabecera es el siguiente:

En el caso de utilizar listas con nodo de cabecera, usaremos el apuntador CAB para hacer referencia a la cabeza de la lista. Para el caso de las listas sin nodo de cabecera, se usar la expresin TOP para referenciar al primer nodo de la lista, y TOP(dato), TOP(liga) para hacer referencia al dato almacenado y a la liga al siguiente nodo respectivamente.

Listas Dobles
Una lista doble , doblemente ligada es una coleccin de nodos en la cual cada nodo tiene dos punteros, uno de ellos apuntando a su predecesor (li) y otro a su sucesor(ld). Por medio de estos punteros se podr avanzar o retroceder a travs de la lista, segn se tomen las direcciones de uno u otro puntero. La estructura de un nodo en una lista doble es la siguiente

Existen dos tipos de listas doblemente ligadas:


Listas dobles lineales. En este tipo de lista doble, tanto el puntero izquierdo del primer nodo como el derecho del ltimo nodo apuntan a NIL. Listas dobles circulares. En este tipo de lista doble, el puntero izquierdo del primer nodo apunta al ltimo nodo de la lista, y el puntero derecho del ltimo nodo apunta al primer nodo de la lista.

Listas Circulares
Las listas circulares tienen la caracterstica de que el ltimo elemento de la misma apunta al primero La siguiente figura es una representacin grfica de una lista circular.

Enseguida se mostrarn los algoritmos ms comunes en listas circulares. Al igual que en las secciones anteriores, utilizaremos el apuntador top para hacer referencia al primer nodo en la lista.

Listas Ortogonales
En este tipo de lista se utiliza para representar matrices. Los nodos contienen cuatro apuntadores. Uno para apuntar al nodo izquierdo (li),otro para apuntar al derecho (ld), otro al nodo inferior (lb) y por ltimo un apuntador al nodo superior (la).

You might also like