Il tipo di dato astratto Pila

E’ definito dalla seguente struttura e dalle seguenti operazioni. Una pila è strutturata come una collezione ordinata di elementi dove gli elementi sono aggiunti e rimossi dall’ultimo inserito. La posizione dell’ultimo elemento è chiamata “top” o cima. Gli elementi nella pila sono ordinati in modo LIFO, ovvero “last in first out”. Le operazioni sono definite sotto.

Per esempio, se s è una pila che è stata creata e inizia vuota, allora Tabella 1 mostra i risultati della sequenza di operazioni. Nella parte stack contents, la cima della pila è l’elemento più a destra.

Tabella 1: Esempio di operazioni su una pila
Stack Operation Stack Contents Return Value
s.isEmpty() [] True
s.push(4) [4]  
s.push('dog') [4,'dog']  
s.peek() [4,'dog'] 'dog'
s.push(True) [4,'dog',True]  
s.size() [4,'dog',True] 3
s.isEmpty() [4,'dog',True] False
s.push(8.4) [4,'dog',True,8.4]  
s.pop() [4,'dog',True] 8.4
s.pop() [4,'dog'] True
s.size() [4,'dog'] 2
Next Section - Implementare una pila in Python