Algor Estructuras
Algor Estructuras
Capacidades:
Utiliza diversos tipos de especificaciones de algoritmos: pseudocódigo y diagrama de flujo de datos
con sus respectivas estructuras básicas de control, simulando la ejecución de algoritmos como lo hace
el computador a fin de detectar errores en el mismo.
Indicadores:
1. Defino estructura de datos
2. Identifico utilidad de la estructura de datos
3. Reconozco tipos de estructuras
4. Defino cada una de las estructuras
5. Grafico
En el ámbito de la informática, las estructuras de datos son aquellas que nos permiten,
como desarrolladores, organizar la información de manera eficiente, y en definitiva diseñar
la solución correcta para un determinado problema.
Ya sean las más utilizadas comúnmente -como las variables, arrays, conjuntos o clases- o
las diseñadas para un propósito específico -árboles, grafos, tablas, etc.-, una estructura de
datos nos permite trabajar en un algo nivel de abstracción almacenando información para
luego acceder a ella, modificarla y manipularla.
Primero, debemos diferenciar entre estructura de dato estática y estructura de dato diná-
mica
Las estructuras de datos estáticas son aquellas en las que el tamaño ocupado en memoria
se define antes de que el programa se ejecute y no puede modificarse dicho tamaño durante
la ejecución del programa, mientras que una estructura de datos dinámica es aquella en la
que el tamaño ocupado en memoria puede modificarse durante la ejecución del programa.
Cada tipo de estructura dependerá del tipo de aplicación que se requiera. Una típica dentro
de las estructuras de datos estáticas son los arrays:
Arrays
Por otro lado, vimos que en programación existen estructuras de datos dinámicas, es decir,
una colección de elementos -nodos- que normalmente se utilizan para dejar asentados re-
gistros. A diferencia de un array que contiene espacio para almacenar un número fijo de ele-
mentos, una estructura dinámica de datos se amplía y contrae durante la ejecución del pro-
grama. Veamos algunos casos:
Las estructuras de datos lineales son aquellas en las que los elementos ocupan lugares su-
cesivos en la estructura y cada uno de ellos tiene un único sucesor y un único predecesor, es
decir, sus elementos están ubicados uno al lado del otro relacionados en forma lineal.
• Listas enlazadas
• Pilas
• Colas
Listas enlazadas
En las estructuras de datos, las listas enlazadas se construyen con elementos que están ubi-
cados en una secuencia. Aquí, cada elemento se conecta con el siguiente a través de un en-
lace que contiene la posición del siguiente elemento. De este modo, teniendo la referencia
del principio de la lista podemos acceder a todos los elementos de la misma.
La pila es un tipo especial de lista lineal dentro de las estructuras de datos dinámicas que
permite almacenar y recuperar datos, siendo el modo de acceso a sus elementos de tipo LIFO
(del inglés Last In, First Out, es decir, último en entrar, primero en salir). ¿Cómo funciona? A
través de dos operaciones básicas: apilar (push), que coloca un objeto en la pila, y su opera-
ción inversa, desapilar (pop), que retira el último elemento apilado.
Estructura de datos no lineales
Las estructuras de datos no lineales, también llamadas multienlazadas, son aquellas en las
que cada elemento puede estar enlazado a cualquier otro componente. Es decir, cada ele-
mento puede tener varios sucesores o varios predecesores.
• Árboles
• Grafos
Árboles
En estructura de datos, los árboles consisten en una estructura no lineal que se utiliza para
representar datos con una relación jerárquica en la que cada elemento tiene un único ante-
cesor y puede tener varios sucesores.
Los mismos se encuentran clasificados en: árbol general, un árbol donde cada elemento
puede tener un número ilimitado de sub árboles y árboles binarios, que son una estructura
de datos homogénea, dinámica y no lineal en donde a cada elemento le pueden seguir como
máximo dos nodos.
Grafos
Otro tipo de no lineal de estructura de datos en programación, son los grafos. Se trata de
una estructura matemática formada por un conjunto de puntos —una estructura de datos—
y un conjunto de líneas, cada una de las cuales une un punto a otro. Los puntos se llaman
nodos o vértices del grafo y las líneas se llaman aristas o arcos.
Ya sabes, las estructuras de datos en programación son un aspecto clave para conocer. Nos
permiten mejorar nuestro código y habilidades técnicas, y en definitiva, resolver de manera
eficiente problemas complejos.