Dinámicas
1. Pilas
2. Colas
3. Listas enlazadas
1. Simples
2. Dobles
Estructuras de Datos
Almacenamiento
Contiguo
Lineales
Estructuras Almacenamiento
de Datos No Contiguo
No lineales
Operaciones Básicas en
Estructuras Lineales
1. Recorrido: Procesa c/elemento de la estructura.
2. Búsqueda: Recupera la posición de un elemento específico.
3. Inserción: Adiciona un nuevo elemento a la estructura.
4. Borrado: Elimina un elemento de la estructura.
5. Ordenación: Ordena los elementos de la estructura de
acuerdo a los valores que contiene.
6. Mezcla: Combina 2 estructuras en una sola.
PILAS
Definición:
Estructura de datos lineal donde los elementos
pueden ser añadidos o removidos solo por un
extremo.
Trabajan con filosofía LIFO (Last In- First Out ).
Ejemplos:
•Pila de platos
•Pila de discos
•Pila de llamadas a funciones
•Pila de recursion
•Pila de resultados parciales de formulas aritméticas, etc.
OPERACIONES BASICAS CON
PILAS
-PUSH (insertar).- Agrega un elementos a la pila en el
extremo llamado tope.
-POP (remover).- Remueve el elemento de la pila que
se encuentra en el extremo llamado tope.
-VACIA.- Indica si la pila contiene o no contiene
elementos.
-LLENA.- Indica si es posible o no agregar nuevos
elementos a la pila.
REPRESENTACIÓN DE PILAS:
• Usando arreglos: Define un arreglo de una dimensión
(vector) donde se almacenan los elementos.
0 1 2 3 4 5
OPERACIONES :
^ potencia
*/ multiplicación, división
+,- suma, resta
Aplicaciones de Pilas
Funciones Recursivas
Las pilas pueden ser usadas para implementar la
recursión en programas.
● Una función o procedimiento recursivo es aquel que
se llama a si mismo.
● Ejemplos:
− Factorial
− Números de Fibonacci
− Torres de Hanoi
− Algoritmos de Ordenamiento de datos
− Etc.
COLAS
Ejemplos:
0 1 2 3 4 5
A F S D Z
Frente Final
• Cuando la cola esta vacía las variables frente y final son
nulos y no es posible remover elementos.
Frente Final
Es una representación lógica
Remover
de la cola en un arreglo.
C D
El frente y final son
movibles. Frente Final
Cuando el frente o final
llegan al extremo se Insertar E
regresan a la primera C D E
posición del arreglo.
Final Frente
Insertar F
F C D E
Representación de colas:
• Usando memoria estática: arreglos con tamaño fijo y
frente fijo o movible o represntación circular.
Final
Frente B C D E F
0 1 2 3 4
B C D E F
Frente
LISTAS ENLAZADAS
4
Jamón 7 •La lista se recorre desde el
5 inicio y hasta encontrar un
6 elemento que contenga un
7
enlace vacío.
Leche 0
LISTAS
Una lista es una colección lineal de elementos llamados nodos
donde el orden de los mismos se establece mediante punteros o
referencias y existe un puntero/referencia especial llamado inicio
para localizar al primer elemento.
Ejemplos:
Información enlace
inicio
* Lista enlazada de 4 elementos
Los nodos de las listas
inicio A
fin
Lista de tres elementos
inicio A B C
fin
Operaciones con listas dobles
• Insertar: Agrega un elemento a la lista.
• Eliminar: Retira un elemento de la lista.
• Buscar: Busca un elemento en la lista.
• Recorrer hacia adelante: Visita todos los elementos de la
lista desde el inicio hasta el final.
• Recorrer hacia atrás: Visita todos los elementos de la lista
desde el final hasta el inicio.
• Vacía: Indica si la lista contiene o no elementos.
• Tamaño: Indica el número de elementos de la lista.