Está en la página 1de 15

PROGRAMA INGENIERIA DE SISTEMAS

ESTRUCTURA DE DATOS

Unidad 2. Estructuras Lineales Dinámicas: LISTAS


2.2 ESTRUCTURAS DE DATOS DINAMICAS LINEALES

Es una colección de Variables Dinámicas llamadas nodos, normalmente tipo registro, que se
enlazan o encadenan unos con otros. El enlace se establece gracias a que cada nodo contiene
al menos un campo de tipo puntero que apunta a otro nodo de la estructura de datos. Estos
punteros permiten el cambio y la liberación de las posiciones de memoria que tienen asociadas
y, de esta manera, la estructura dinámica puede modificar su tamaño en tiempo de ejecución.

Como Estructuras Dinámicas de Datos tenemos : Listas Enlazadas (Simples, Dobles, Circulares
y Doble Circular), Las Pilas, Las Colas, Los Arboles y los Grafos.
PROGRAMA INGENIERIA DE SISTEMAS
ESTRUCTURA DE DATOS

2.2.1 LISTAS SIMPLEMENTE ENLAZADAS

Es la secuencia de una o más Variables Dinámicas tipo Registro, que regularmente llamamos
nodos, donde cada variable tiene los campos necesarios para almacenar datos y un campo
puntero que conserva la dirección de memoria de la siguiente variable de la lista. La última
variable almacena en su campo puntero el valor de NULO para indicar que no siguen más
elementos.

En este tipo de listas, las Variables dinámicas se almacenan en posiciones de memoria que no
son contiguas o adyacentes. Por ello, cada nodo necesita almacenar en su campo puntero la
posición o dirección de la siguiente variable de la lista.

La dirección de memoria del primer nodo de toda lista enlazada debe ser almacenado en un
campo puntero externo, el cual regularmente llamamos CABEZA. A partir de esté es posible
acceder a la lista cada vez que sea necesario. Asimismo, se recomienda usar otro campo
puntero externo que llamamos FIN para conservar la dirección del último nodo y así evitar
recorrer la lista completa cada vez que se dese agregar un nuevo elemento. De modo, que para
la inserción o borrado de un elemento de la lista no se requiere el desplazamiento de otros
elementos de la misma.
PROGRAMA INGENIERIA DE SISTEMAS
ESTRUCTURA DE DATOS

2.2.2 REPRESENTACION

CABEZA FIN
PROGRAMA INGENIERIA DE SISTEMAS
ESTRUCTURA DE DATOS

2.2.3 OPERACIONES BASICAS

En el Material de Apoyo No 3 del Plan de Desarrollo de la Asignatura, se considera revisar y


analizar el código C/C++ con las cuatro operaciones básicas de las Listas Simplemente
Enlazada. Esto es, Crear, Adicionar, Eliminar y Consulta.
PROGRAMA INGENIERIA DE SISTEMAS
ESTRUCTURA DE DATOS

2.3 LISTAS DOBLEMENTE ENLAZADAS

2.3.1 CONCEPTO

En este tipo de listas cada Variable Dinámica (nodo) tiene dos campos punteros : ANTERIOR y
SIGUIENTE; el campo puntero ANTERIOR apunta al nodo antecesor y el campo puntero
SIGUIENTE apunta al nodo sucesor. De modo, que su recorrido puede realizarse tanto de frente
a final como de final a frente.

En estas listas el campo puntero SIGUIENTE del último nodo y el campo puntero ANTERIOR del
primer nodo conservan el valor de NULO.
PROGRAMA INGENIERIA DE SISTEMAS
ESTRUCTURA DE DATOS

2.3.2 REPRESENTACIÓN

CABEZA FIN
PROGRAMA INGENIERIA DE SISTEMAS
ESTRUCTURA DE DATOS

2.3.3 OPERACIONES BASICAS

En el Material de Apoyo No 4 del Plan de Desarrollo de la Asignatura, se considera revisar y


analizar el código C/C++ con las cuatro operaciones básicas de las Listas Doblemente
Enlazada. Esto es, Crear, Adicionar, Eliminar y Consulta.
PROGRAMA INGENIERIA DE SISTEMAS
ESTRUCTURA DE DATOS

2.4 LISTAS CIRCULARES SIMPLES ENLAZADAS

2.4.1 CONCEPTO

Son una variante de las listas Simplemente Enlazadas en las que el campo puntero del último
nodo (Variable Dinámica) apunta al primero de la lista. Para éste tipo de lista es suficiente
conservar la dirección de memoria del último nodo (Variable Dinámica) ya que el siguiente es el
primero.
PROGRAMA INGENIERIA DE SISTEMAS
ESTRUCTURA DE DATOS

2.4.2 REPRESENTACIÓN

FIN
PROGRAMA INGENIERIA DE SISTEMAS
ESTRUCTURA DE DATOS

2.4.3 OPERACIONES BASICAS

En el Material de Apoyo No 5 del Plan de Desarrollo de la Asignatura, se considera revisar y


analizar el código C/C++ con las cuatro operaciones básicas de las Listas Circulares
Simplemente Enlazadas. Esto es, Crear, Adicionar, Eliminar y Consulta.
PROGRAMA INGENIERIA DE SISTEMAS
ESTRUCTURA DE DATOS

2.5 LISTAS CIRCULARES DOBLEMENTE ENLAZADAS

2.5.1 CONCEPTO

Es una variante de las listas doblemente enlazadas, donde el campo puntero SIGUIENTE del
último nodo apunta al primer nodo de la lista y el campo puntero ANTERIOR del primer nodo
apunta al último nodo de dicha lista.
PROGRAMA INGENIERIA DE SISTEMAS
ESTRUCTURA DE DATOS

2.5.2 REPRESENTACIÓN

FIN
PROGRAMA INGENIERIA DE SISTEMAS
ESTRUCTURA DE DATOS

2.5.3 OPERACIONES BASICAS

En el Material de Apoyo No 6 del Plan de Desarrollo de la Asignatura, se considera revisar y


analizar el código C/C++ con las cuatro operaciones básicas de las Listas Circulares
Doblemente Enlazadas. Esto es, Crear, Adicionar, Eliminar y Consulta.
FIN

También podría gustarte