Taller estructura de datos
Frank De Jesús Tarr Gomez
Universidad Incca de Colombia
Estructura de datos II
Ingeniería de sistemas
Fernando Silva Alfonso
Febrero de 2024
¿Qué es estructuras de datos?
Las computadoras alojan información en sus discos de memoria, esta información
se les llama datos; los datos se almacenan de forma lógica y física en la unidad de
memoria de los dispositivos – la forma de guardar, acceder y manipular estos datos se le
llama estructura de datos, permitiendo así poder agregar, eliminar o modificar los
mismos.
Estructuras de datos básicas: Matrices, listas enlazadas, pilas, colas, arboles y
grafos.
Matrices: una matriz es una estructura de datos lineal de tamaño fijo que
almacena elementos del mismo tipo de datos. Se accede a los elementos utilizando un
entero como índice para especificar el elemento que se requiere. Las matrices pueden
cambiar de tamaño o tener una longitud fija.
Matriz de 3x5:
1 2 3 4 5
6 7 8 9 10
11 12 13 14 15
Matriz de 2x2:
1 2 ¿ ¿6 7 ¿ ¿
Listas enlazadas: una lista enlazada es otra estructura de datos lineal que consta de
elementos llamados nodos y cada nodo contiene un dato y un puntero al siguiente nodo
de la lista. Las listas enlazadas permiten insertar y eliminar elementos de forma dinámica,
sin necesidad de reubicar los demás elementos.
cabeza -> [1] -> [2] -> [3] -> NULL
NULL <- cabeza -> [1] <-> [2] <-> [3] <- cola -> NULL
Pilas: una pila es una estructura de datos de último en entrar, primero en salir
(LIFO) donde solo se puede acceder al elemento superior. Las pilas permiten realizar
operaciones de inserción (push) y extracción (pop) en tiempo constante. Las pilas se
utilizan para implementar funciones recursivas, deshacer acciones, etc.
Imagen 1: tomado de https://www.oscarblancarteblog.com/wp-content/uploads/2014/08/pilain.png
Colas: una cola es una estructura de datos de primero en entrar, primero en salir
(FIFO) donde solo se puede acceder al elemento frontal. Las colas permiten realizar
operaciones de inserción (enqueue) y extracción (dequeue) en tiempo constante. Las
colas se utilizan para implementar algoritmos de planificación, simulación, etc.
Imagen 2, Colas: Tomado de https://somoshackersdelaprogramacion.es/wp-content/uploads/2022/06/cq2.png
Árboles: un árbol es una estructura de datos no lineal que representa una jerarquía
de elementos. Cada elemento se llama nodo y tiene un valor y una lista de subnodos. El
nodo superior se llama raíz y los nodos sin subnodos se llaman hojas. Los árboles
permiten realizar operaciones de búsqueda, inserción y eliminación de forma eficiente,
así como recorrer los elementos en diferentes órdenes. Los árboles se utilizan para
implementar estructuras de datos abstractas, como conjuntos, mapas, árboles de búsqueda
binaria, árboles de prefijos, etc.
Imagen 3 Arboles: Tomado de http://aniei.org.mx/paginas/uam/CursoPoo/curso_poo_12.html
Imagen 4, Arboles: Tomado de https://www.hci.uniovi.es/Products/DSTool/images/busqueda/eliminar1.gif
Grafos: un grafo es una estructura de datos no lineal que representa un conjunto
de elementos llamados vértices y las relaciones entre ellos llamadas aristas. Las aristas
pueden tener una dirección y un peso asociado. Los grafos permiten modelar redes,
sistemas, problemas de optimización, etc. Los grafos se pueden recorrer utilizando
algoritmos como el de búsqueda en profundidad, búsqueda en anchura, Dijkstra, etc.
Imagen 5, Grafos: Tomado de https://miro.medium.com/v2/resize:fit:491/1*_ZLmV0IH7_j8eQUrlG76hg.png
Imagen 6, Grafos:https://es.wikipedia.org/wiki/Grafo_%28tipo_de_dato_abstracto%29
Un TDA (Tipo de Dato Abstracto) es una forma de definir un conjunto de datos y
operaciones sobre esos datos, sin especificar los detalles internos de su implementación.
Bibliografía
AppMaster. (2023). ¿Qué son las estructuras de datos? Definición y tipos.
AppMaster. https://appmaster.io/es/blog/que-son-las-definiciones-y-tipos-de-estructuras-
de-datos (consultado el 21 de febrero de 2024).
Figueiras, S. (2022). ¿Qué es una estructura de datos? Maestrías y MBA.
https://www.ceupe.mx/blog/que-es-una-estructura-de-datos.html (consultado el 21 de
febrero de 2024).
KeepCoding Team. (2023). Explora las estructuras de datos básicas en
programación. KeepCoding. https://keepcoding.io/blog/estructuras-de-datos-basicas-en-
programacion/ (consultado el 21 de febrero de 2024).
Muy Tecnológicos. (2020). Estructura de datos - Qué es, definición y concepto.
Muy Tecnológicos. https://muytecnologicos.com/diccionario-tecnologico/estructura-de-
datos (consultado el 21 de febrero de 2024).
Wikipedia. (2021). Estructura de datos. Wikipedia, la enciclopedia
libre. https://es.wikipedia.org/wiki/Estructura_de_datos (consultado el 21 de febrero de
2024).