Вы находитесь на странице: 1из 18

Estructuras dinmicas

Listas

Estructuras dinmicas

Listas
Estructuras dinmicas, compuestas por nodos linealmente ordenados con adyacencia lgica, las cuales pueden crecer o reducirse. Se recorren secuencialmente y solo estn limitadas por la cantidad de memoria

Tipo de listas
Simplemente Encadenada:
Es una secuencia de nodos, donde cada uno se encuentra enlazado con el siguiente mediante un puntero cada elemento debe tener como mnimo dos campos, uno que contiene el valor de ese elemento y otro (puntero interno) que indica la posicin del siguiente elemento de la lista. Tambin debe existir otro puntero (puntero externo) Pirm que indica el primer elemento de la lista, o sea, donde comienza la lista.
El ltimo elemento contiene una direccin que indica el fin de la lista, se establece por el concepto de nulidad.

Doblemente enlazada
Es una lista que posee dos punteros externos, uno que apunta al primer nodo de la misma Prim y otro al ltimo Ult . Su estructura de nodos contiene dos campos de enlace (punteros internos) donde el precedente es el enlace izquierdo y el sucesor el enlace derecho.

Circulares
Es una lista donde el campo de enlace o puntero interno del ltimo elemento apunta al primero, se caracteriza por la no existencia del puntero nulo, primer ni ltimo elemento. Sin embargo, se debe elegir obligatoriamente un puntero externo que apunte a cualquiera de los elementos de la lista.

Ambiente
NODO: registro DATO: entero PROX: puntero a nodo Fin registro P,Q,R: puntero a NODO

Recorrido
Ambiente Nodo: registro dato: entero; Prox: puntero a nodo; finRegistro Prim,H, Ant: puntero a nodo;
Datox: entero; Algoritmo Si (Prim = Nil) entonces Escribir('Lista vaca'); Sino Leer(Datox); H := Prim; Mientras (H <> Nil) y (H^.Dato <> Datox) hacer Ant := H; H := H^.Prox; FMientras

Insercin

Eliminacin

Eliminacin

Listas particularizadas - Pilas


LIFO (Last Input/First Output): Es una estructura de datos en la cual todas las inserciones y eliminaciones se realizan por el mismo extremo (tope de pila).

Al leer los datos almacenados en la lista parecen en sentido inverso al que fueron ingresados.
Uso mas comun: Administracin de memoria, interpretador sintctico de lenguaje, llamada a subprogramas, recursin

Listas particularizadas - Colas


FIFO (First Input/First Output)
Es una estructura de datos donde los elementos se apilan, pero se recogen los elementos por extremos diferentes.

Las colas se utilizan siempre que se quiere recuperar una secuencia de elementos en el orden en que fueron ingresados
Ideal para gestionar lneas de espera (cola de impresin/procesos)

Arboles
Es una estructura dinmica totalmente recursiva, es decir, se define y se ejecuta de forma recursiva. dispone la informacin de manera jerrquica, sus elementos se llaman nodos. Cada nodo est enlazado con el prximo de acuerdo a una jerarqua. La cantidad de punteros de un nodo es igual a la cantidad de nodos de la raz. Un rbol puede tener cualquier cantidad de puntos internos (rboles ternarios, cuaternarios, etc.), el ms chico es el binario Nodo Raz: Es el nodo superior, representa la entidad mayor dentro el rbol, es el nodo de mayor jerarqua. Nodo Terminal u Hoja: Aquel o aquellos nodos que no tengan descendientes. Nodo Interior: Cualquier elemento que no sea terminal. Grado: Es el nmero de descendientes directos de un nodo. Longitud: El camino ms largo de un nodo raz hasta uno terminal. Profundidad: Es el nmero de nodos que se encuentran entre l y la raz.

Tipos de Arboles
Arboles N-arios

Arboles binarios

Grafos
Un Grafo consiste en un conjunto de vrtices o nodos V y un conjunto de arcos A. Se representa con el par G = {V, A}
Una arista est formada por un par de nodos y se escribe (u, v), siendo u y v el par de nodos. Un grafo es dirigido (dgrafo) si los pares de nodos que forman los arcos son ordenados, y se representan u -> v.

Tipos De grafos
Grafos no dirigidos Grafos dirigidos

Grafos representacin

Вам также может понравиться