3 min de lectura

Una pila es una versión restringida de una lista. En todo momento sólo se tiene acceso a la parte superior de la pila, es decir,al último objeto apilado. Por esta razón, a una pila se le conoce como una estructura de datos LIFO(Last In First Out).

Diagrama básico del funcionamiento de la pila.

Una pila al ser una lista puede almacenar en el campo de información cualquier tipo de valor (int, char, float, vector de caracteres, un objeto, etc), por analogía con objetos cotidianos, una operación apilar(push) equivaldría a colocar un plato sobre una pila de platos, y una operación retirar(pop) a quitarlo. En palabras sencillas es un lugar donde se almacenan datos.

Leamos un par de ejemplos simples de pila en Java:

Pila programada sin usar la clase Stack.

 

 

Pila programada usando la clase Stack.

 

Métodos:

empty():          Regresa valor booleano true si la pila se encuentra vacía.
push(item) :   Introduce el objeto dentro de la pila.
pop():              Remueve el objeto de el tope de la pila
peek():            Muestra el objeto del tope de la pila sin extraerlo.
search(item): Regresa un entero con la posición de el objeto buscado o regresa un -1 si no se encuentra el objeto.

 

Es importante destacar que la pila independientemente del lenguaje, es un TDA usado en muchísimos lugares, por ser un modelo muy representativo de la recursividad, el manejo de un Sistema Operativo, entre muchos otros.

2 COMENTARIOS

Deja tus comentarios

This site uses Akismet to reduce spam. Learn how your comment data is processed.