Conteneurs de séquence - deque

Conteneurs de séquence - stack

Conteneurs de séquence - queue

stack

Les piles sont des structures de données qui se comportent, comme leur nom l’indique, comme un empilement d’objets. Elles ne permettent donc d’accéder qu’aux éléments situés en haut de la pile, et la récupération des éléments se fait dans l’ordre inverse de leur empilement. Pour implémenter une pile, vous devez inclure le fichier en-tête <stack> au début du programme et travailler dans l’espace de noms std.
La classe modèle stack reçoit deux arguments : le type des données à stocker dans la pile et un type de conteneur de séquence qui doit fournir au minimum les fonctions back(), push_back et pop_back. Vous pouvez donc utiliser les trois types précédents : vector, list et deque. Si vous ne fournissez pas cet argument, le conteneur deque est sélectionné par défaut.

Le code 8.10 illustre l’utilisation d’une pile. Les opérations sont très simples puisque leur champ d’action est limité à l’élément « du dessus » de la pile. La classe stack fournit la fonction push() pour empiler un élément, la fonction pop pour supprimer l’élément du dessus et la fonction top() pour accéder à cet élément.

Code 8.10 : utilisation d’une pile

#include <iostream> 
#include <stack>  

using namespace std; 

int main() 
{ 
   typedef stack<int> pile_entiers; 
   //On crée une pile : 
   pile_entiers ma_pile; 
   //On empile quelques éléments : 
   ma_pile.push(1); 
   ma_pile.push(2);  
   ma_pile.push(3);  
  //On affiche les éléments en ordre inverse : 
 while (!ma_pile.empty()) //tant que la pile n’est pas vide 
  { 
    cout << ma_pile.top() << endl;  //on affiche l’élément 
      ma_pile.pop();                //puis on le supprime 
   } 
}


Le texte original de cette fiche pratique est extrait de
«Tout sur le C++» (Christine EBERHARDT, Collection
CommentCaMarche.net, Dunod, 2009)

Dernière modification le vendredi 30 octobre 2009 à 12:05:19.Ce document intitulé « Conteneurs de séquence - stack » issu de Comment Ça Marche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Meilleures réponses pour « Conteneurs de séquence stack » dans :
Conteneurs de séquence - vector Voir Conteneurs de séquence La bibliothèque C++ standard contient trois véritables conteneurs de séquence : vector, list et deque. Les conteneurs stack, queue et priority_queue sont plutôt des descripteurs de conteneur. vector Pour utiliser un...
Conteneurs associatifs - map Voir Conteneurs associatifs Alors que les conteneurs de séquence sont conçus pour des accès séquentiels et aléatoires à leurs éléments via l’index ou un itérateur, les conteneurs associatifs sont conçus pour un accès aléatoire rapide aux éléments à...
Conteneurs de séquence - list Voir list Pour utiliser un conteneur list, vous devez inclure le fichier en-tête au début du programme et travailler dans l’espace de noms std. Généralement, la classe list est implémentée sous la forme d’une liste doublement chaînée. Elle fournit...
[PHP] Lister le contenu d'un répertoire VoirGrâce à PHP, il est possible d'afficher le contenu d'un répertoire et de ses sous-répertoires. Voici ci-dessous une fonction permettant de parcourir récursivement les répertoires et sous-répertoires et d'en afficher les fichiers : function...
Booter sur CD, changer séquence de boot VoirComment booter sur un CD Si vous avez essayé de démarrer sur un CD bootable et que celui-ci a été ignoré par le système, il va falloir modifier la séquence de boot de votre BIOS (programme minimal de tout système informatique). La séquence de...
Oracle - Les séquences VoirCet article s'appuie sur la version 8.1.6 d'Oracle. Une séquence est un objet de base de données Oracle, au même titre qu'une table, une vue, etc... Autrement dit, il appartient à un utilisateur, on peut le manipuler, le modifier, à condition...
RSS - Syndication de contenu VoirIntroduction au RSS Le standard RSS représente un moyen simple d'être tenu informé des nouveaux contenus d'un site web, sans avoir à le consulter. Le format « RSS » (traduisez « Really Simple Syndication ») permet ainsi de décrire de façon...
Vidéo : synopsis, scénario et storyboard VoirSynopsis (résumé de l'histoire) Définition Contenu Le rôle du synopsis Longueur Rédiger un scénario Le séquencier Dans le scénario Story-board ou scénarimage C’est au départ l’idée qui constitue l’envie de monter un projet : un fait...
Collection CommentÇaMarche.net