![]() ![]() |
|
![]() ![]() |
In questa realizzazione di Pila<E>,
gli elementi sono memorizzati in una lista concatenata, cioè
una sequenza di nodi ognuno dei quali contiene un elemento della
lista (un oggetto di tipo E) e un puntatore al prossimo nodo.
Una pila contenente gli elementi <A1,
A2, ..., An>
viene rappresentata con una lista concatenata, dove il primo elemento è puntato dalla variabile top e contiene l'ultimo elemento inserito:
|
![]() ![]() |
|
![]() ![]() |
Per la classe PilaList<E> abbiamo fatto le seguenti scelte:
|
![]() ![]() |
|
![]() ![]() |
Il codice completo della classe PilaList<E>
è mostrato sotto. La realizzazione si appoggia ovviamente sulla
classe ListNode<E>.
|
![]() ![]() |
|
![]() ![]() |
1) Si consideri la seguente interfaccia
Si scriva la classe RevPilaList che estende PilaList e implementa l'interfaccia RevPila in modo tale che il metodo reverse() rovesci la pila su cui viene chiamato. |