Fondamenti di Informatica I
Corso di Laurea in Ingegneria Informatica e Automatica

A.A. 2002/03

Esercitazione 11

Array dinamici e liste collegate


Scrivere una classe Java Pila per rappresentare oggetti Pila di stringhe, cioe' sequenze di elementi di tipo stringa che vengono gestite con la politica LIFO (Last In First Out), ossia l'ultimo elemento entrato e' il primo ad uscire. Le funzionalita' della classe Pila devono essere le seguenti:

Parte 1. Realizzare la classe Pila facendo uso di array.

Parte 2. Realizzare la classe Pila facendo uso di una lista collegata.

Per provare la classe si faccia uso del seguente cliente (se necessario modificarlo in modo che le chiamate rispettino nome e segnatura dei metodi pubblici della classe Pila realizzata):

public class TestPila {
  public static void main (String[] args) {
    Pila p = new Pila();
    // inserisce elementi nella pila
    p.push("A");
    p.push("B");
    p.push("C");
    System.out.println(p);
    // svuota la pila
    while (!p.estVuota()) {
      System.out.println(p.top());
      p.pop();
    }
    System.out.println(p);
  }
}