Aun sin saberlo, cuando programamos estamos constantemente utilizando diferentes tipos de estructuras de datos. Por este motivo es muy importante saber entender qué es una estructura de datos y los diferentes tipos de estructuras de datos que podemos utilizar a la hora de desarrollar un programa.
En primer lugar, una estructura de datos es una interfaz que nos permite almacenar y organizar la información de forma eficiente en función del uso que se le quiera dar a dicha información. No obstante, independientemente del tipo de datos almacenados, estos siempre se van a guardar en la memoria. Lo importante de esto es la forma en la que los datos se almacenan en la memoria. Por ejemplo, para guardar una cadena de caracteres utilizamos un array, una estructura de datos que almacena los datos de forma secuencial, es decir, un byte detrás de otro.
De este modo, podemos encontrarnos con una gran cantidad de estructuras de datos muy importantes a la hora de programar. Entre las estructuras de datos más frecuentes podemos destacar:
- Array: la información se almacena de forma lineal o contigua.
- Lista enlazada: la información se almacena en zonas libres de la memoria. Los datos no se almacenan de forma lineal.
- Stack: la información se almacena de forma lineal. Tiene la peculiaridad de que el último elemento en entrar al stack es el primero en salir de este. Esta es la única manera de añadir o eliminar información.
- Cola: la información se almacena de forma lineal. A diferencia del stack, el primer elemento en entrar en la cola es el primer elemento en salir. De nuevo, esta es la única manera de añadir o eliminar información.
- Árbol binario: la información se almacena de forma jerárquica en forma de nodos. Cada nodo padre puede tener un máximo de dos nodos hijo.
- Tabla hash: cada elemento de la tabla está asociado a un identificador. De este modo, cada nuevo elemento tendrá un nuevo identificador, como si de una llave de acceso se tratara.
- Grafo: formado por un conjunto de nodos y vértices que se encuentran interrelacionados entre sí.

Para seguir aprendiendo…
Informatica.uv: ESTRUCTURA DE DATOS
TecnoInformatic: Estructura de datos: descripción, ejemplos y más