Pilas – Estructura de Datos LIFO

¿Qué es la estructura de datos pila o stack?

Las pilas son una estructura de datos LIFO (Last In First Out), es decir, que el último elemento que ha sido guardado es el primero que sale. Podemos imaginarla como una caja en la que guardamos nuestras fotos de cuando éramos pequeños. Al abrir la caja, la primera foto que sacarás será la última que se introdujo, la segunda será la penúltima y así sucesivamente hasta llegar al fondo de la caja, donde habrá la primera foto que se guardó.

Explicación de cómo funciona la estructura de datos pila como si fuera una caja con fotos

Operaciones con pilas

La pila tiene una serie de operaciones fundamentales que son:

  • push ‘x’: añadir un elemento ‘x’ en el top de la pila (apilar).
  • pop: eliminar el elemento del top de la pila (desapilar).
  • peek: consultar qué elemento hay en el top de la pila.

Veamos un ejemplo de como se comportaria esta estructura de datos para la siguiente secuencia de instrucciones:

push 4 – push 3 – push 5 – pop – pop

operaciones push y pop en pilas

Pilas en lenguajes de programación

Algunos lenguajes de programación como Java y C++ ofrecen clases pila que podemos usar importando su correspondiente módulo. Este hecho, nos facilita la creación de algunos algoritmos donde el uso de una estructura LIFO puede llegar a ser una práctica muy eficiente. Si quieres saber cómo usar pilas en tu programa, te dejo aquí estos artículos.

Pila en C++ | Explicación de la librería stack para usar la clase pila

¡En este artículo encontrarás cómo se crea y se usa una pila en c++! Además, te ofrezco ejemplos con código ejecutable.

Stack Java: Documentación y ejemplos de la clase

En este artículo te resumo de forma sencilla la documentación de la clase Stack de Java. Aquí encontrarás código y ejemplos.

Implementación de pilas

Un buen ejercicio para mejorar nuestras habilidades como programadores es el de intentar implementar las estructuras de datos que vamos aprendiendo. En esta sección encontrarás todo el código y explicación necesarias para implementar una pila en Java y en Python. Si implementamos en java, podemos elegir entre dos estrategias simples: usar un array o nodos enlazados. Por otro lado, en Python, la implementación de una pila resulta más fácil de comprender usando listas.

¡Practica con pilas!

Qué mejor manera para consolidar lo que aprendes que aplicarlo de forma práctica. De nada sirve conocer la teoria si no eres capaz de usarla a tu favor a la hora de programar. En este artículo encontrarás una serie de ejercicios con solución usando pilas. Además, la solución está en 3 lenguajes de programación: Java, C++ y Python.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Estoy de acuerdo con que el responsable de la web Aprendiz de Programación use los datos proporcionados en este comentario para poder comunicarse de forma efectiva.

Scroll al inicio