Dans le dictionnaire anglais, Stack signifie placer un objet au-dessus d'un autre objet. La manière dont la mémoire est allouée dans cette structure de données est la même. Il stocke les éléments de données de la même manière qu’une pile de plats dans la cuisine : les uns sur les autres. Par conséquent, la fin de la pile de données qui permet les opérations peut être appelée le sommet de la pile. Les éléments peuvent être ajoutés en haut de la pile ou simplement supprimés de la pile.
Dans une pile, le dernier élément de la séquence apparaîtra en premier, puisqu'il ne peut être supprimé que du haut de la pile. Cette fonctionnalité est appelée fonctionnalité dernier entré, premier sorti (LIFO). Les opérations d'ajout et de suppression d'éléments sont appelées PUSH et POP. Dans le programme ci-dessous, nous l'implémentons sous forme de fonctions d'ajout et de suppression. Déclarez d’abord une liste vide et utilisez les méthodes append() et pop() pour ajouter et supprimer des éléments de données.
Pousser vers la pile
class Stack: def __init__(self): self.stack = [] def add(self, dataval):# Use list append method to add element if dataval not in self.stack: self.stack.append(dataval) return True else: return False# Use peek to look at the top of the stack def peek(self): return self.stack[0]AStack = Stack()AStack.add("Mon")AStack.add("Tue")AStack.peek()print(AStack.peek())AStack.add("Wed")AStack.add("Thu")print(AStack.peek())Python
Exécutez l'exemple de code ci-dessus et obtenez les résultats suivants -
Mon MonShell
Recommandations associées : "vidéo python tutoriel》
Suppression de la pile
ne peut supprimer que des éléments de données de la pile. Un programme python capable de réaliser cette fonction est implémenté ci-dessous. La fonction Remove dans le programme suivant renvoie l'élément le plus haut. Vérifiez d’abord l’élément supérieur en calculant la taille de la pile, puis utilisez la méthode pop() intégrée pour connaître l’élément le plus haut. Reportez-vous à l'implémentation du code suivant
class Stack: def __init__(self): self.stack = [] def add(self, dataval):# Use list append method to add element if dataval not in self.stack: self.stack.append(dataval) return True else: return False# Use list pop method to remove element def remove(self): if len(self.stack) <= 0: return ("No element in the Stack") else: return self.stack.pop()AStack = Stack()AStack.add("Mon")AStack.add("Tue")print(AStack.remove())AStack.add("Wed")AStack.add("Thu")print(AStack.remove())Python
Exécutez l'exemple de code ci-dessus et obtenez les résultats suivants
Tue Thu
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!