Hola a todos, hoy os voy a explicar como funciona la estructura de datos Stack en Java.
La estructura dinámica Stack nos permite añadir datos de forma apilada, es decir, un dato encima de otro.
Stack utiliza LIFO (Last Input First Output) que significa que el primero en salir es el que ultimo que entro.
Ejemplos en la vida real de Stack podrian ser una baraja de cartas, una pila de platos, etc.
¿Como crear un Stack?
Para crear un Stack, debemos instanciar un objeto de clase Stack de java.util.
Si quieres especificar el tipo, Stack es genérico.
Añadir elementos
Para añadir elementos en un Stack, debemos usar el método push.
Cada vez que añadamos un elemento, este se pondra encima del ultimo y este sera el proximo a salir.
Como sacar elementos de un Stack
Para sacar elementos en un Stack, debemos usar el método pop.
Este devolverá el elemento mas arriba y lo sacará del Stack.
Si quieres saber cuál es el siguiente elemento a salir sin eliminar, puedes usar el método peek.
Otros métodos utiles
A parte de los métodos que hemos visto, tenemos otros que son interesantes de conocer:
- size: Devuelve el numero de elementos en el stack.
- isEmpty: Devuelve si el stack está o no vacia.
Si quieres ver mas, puede ver la documentación oficial.
Como recorrer un Stack
Para recorrer un stack, podemos ir extrayendo cada elemento hasta que la pila esté vacia.
Para ello, podemos usar los métodos pop y isEmpty.
Te dejo un video con mas detalles:
Ejercicio
¿Quieres practicar con un ejercicio? Te dejo uno para que le eches un ojo.
Crea una baraja de cartas y muestra cada una de las cartas
Espero que os sea de ayuda. Si tenéis dudas, preguntad. Estamos para ayudarte.
My co-worker Mohamed has one of these. He says it looks brown.
heard about this on hip-hop music radio, decided to give it a try.
I tried to impale it but got fudge all over it.
i use it hardly when i’m in my prison.
I saw one of these in New Zealand and I bought one.
My co-worker Fate has one of these. He says it looks tall.
I tried to behead it but got truffle all over it.
i use it usually when i’m in my alley.
It only works when I’m Cook Islands.
i use it daily when i’m in my courthouse.