Bienvenido a Anonimo

 

Pilas en Java con LinkedList

Escrito el 07 de Diciembre 2009 | Lecturas:746

Pilas en Java con LinkedList

La implementacion de estructuras de datos como las famosas pilas o bien llamadas listas lifo ( Last-In, First-Out, que quiere decir ultimo en entrar, primero en salir ) es algo muy sencillo de implementar al trabajar con java.


En java existe una clase llamada LinkedList que nos ayuda a relizar todo esto de manera sencilla.


Algunos metodos que nos facilita esta clase son:


addFirst(Objeto): Añade el objeto al principio de la lista. Util para pilas

addLast(Objeto): Añade el objeto al final de la lista Util para colas

add(): Añade un elemento

getFirst(): Devuelve el primer objeto de la lista. Util para pilas

get():Devuelve un objeto

getLast(): Devuelve el último objeto al final de la lista Util para colas

removeFirst(Objeto): Borra el objeto al principio de la lista. Util para pilas

removeLast(Objeto): Borra el objeto al final de la lista Util para colas

remove(): Elimina un elemento

isEmpty(Objeto): Indica si la lista es vacia

size(): Retorna el tamañano de la lista


 


Entonces, para crear una pila con linkedlist solo bastaria hacer lo siguiente:



pila.java


// Pila.java
import java.util.*;

public class Pila{
private LinkedList lista = new LinkedList();
public void push(Object o){
lista.addFirst(o);
}
public Object top(){
return lista.getFirst();
}
public Object pop(){
return lista.removeFirst();
}
public Object size(){
return lista.size();
}
public static void main(String[] args){
Pila mipila = new Pila();

//agregamos elementos a la pila
for(int i=0; i<5; i++){
mipila.push("Elemento Numero "+i);
}

System.out.println("El tamaño de la pila es :"+mipila.size());
System.out.println("la cima es: "+mipila.top());
System.out.println("borrando : " +mipila.pop());
System.out.println("borrando : " +mipila.pop());
System.out.println("borrando : " +mipila.pop());
System.out.println("ahora la cima es :"+mipila.top());
System.out.println("El tamaño de la pila es :"+mipila.size());
}
}


 


La salida de la pila.java seria:


--------------------Configuration: <Default>--------------------

El tamaño de la pila es :5

la cima es: Elemento Numero 4

borrando : Elemento Numero 4

borrando : Elemento Numero 3

borrando : Elemento Numero 2

ahora la cima es :Elemento Numero 1

El tamaño de la pila es :2


Process completed.