La pila e' una struttura dati che ti permette di memorizzare e prelevare i dati in successione, con la particolarita' che il primo elemento che prelevi e' l'ultimo elemento che hai inserito, un po' come se tu dovessi impilare dei piatti... da li il nome.
Un'impementazione veloce veloce potrebbe essere questa:
codice:
public class pila {
private final int MAX = 256;
private char store[] = new char[MAX];
private int cursore = -1;
public boolean svuota() {
cursore = -1;
}
public char push( char c) {
if( !piena()) {
cursore++;
store[cursore] = c;
}
}
public char pop() {
if( vuota()) return null
else return store[cursore--];
}
public char top() {
if( vuota()) return null
else return store[cursore];
}
public boolean vuota() {
return cursore == -1;
}
public boolean piena() {
return cursore == (MAX-1);
}
}
La differenza tra i metodi top e pop e' che top restituisce il dato in cima alla pila, senza cancellarlo.