IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

SL & STL C++ Discussion :

Concaténation pile vecteur


Sujet :

SL & STL C++

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 18
    Par défaut Concaténation pile vecteur
    Bonjour,

    Je souhaiterai créer une liste dont le contenu est la concaténation d'un vecteur et d'une pile (stack). Mais, je ne trouve pas la fonction permettant de le faire. J'ai pensé à set_union mais cela ne fonctionne pas.

    Pouvez-vous m'aidez svp ?

  2. #2
    Membre averti
    Inscrit en
    Juillet 2006
    Messages
    38
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 38
    Par défaut
    Je ne suis pas sûr de bien avoir compris la question, mais je pense qu'il faut que tu fasses ta fonction "à la main", en itérant sur les éléments de ton vecteur et de ta stack.

    En tout cas s'il existe une fonction toute faite qui réalise ce que tu souhaites, je ne la connais pas

    ++
    Charles

  3. #3
    Membre Expert

    Inscrit en
    Mai 2008
    Messages
    1 014
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 1 014
    Par défaut
    Bonjour,
    Pour le vecteur, il n'y a pas vraiment de problème, c'est une fonction insert() toute bête :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    std::vector<int> v;
     
    // remplir v
     
    std::list<int> l;
    l.insert(l.end(), v.begin(), v.end());
    Par contre, pour la stack c'est plus délicat. Une stack n'est pas un conteneur classique avec un begin() et un end(). C'est une adaptation de conteneur dont l'interface est volontairement restreinte pour se conformer au concept de pile : seul push() et pop() sont autorisés.

    Il n'est donc pas possible de parcourir la pile sans la modifier. Il faut la dépiler élément par élément dans une boucle à la main jusqu'à ce qu'elle soit vide.

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 18
    Par défaut
    Merci beaucoup pour ces réponses.

  5. #5
    Expert éminent
    Avatar de koala01
    Homme Profil pro
    aucun
    Inscrit en
    Octobre 2004
    Messages
    11 635
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : Belgique

    Informations professionnelles :
    Activité : aucun

    Informations forums :
    Inscription : Octobre 2004
    Messages : 11 635
    Par défaut
    Salut,

    Allez savoir pourquoi, j'aurais trouvé beaucoup plus logique de vouloir concaténer un tableau et une file qu'un tableau et une pile...

    Enfin, si, je sais pourquoi...: la file fonctionne sur le modèle LIFO et la pile sur le modèle FILO...

    Du coup, il faut bien se dire que les éléments récupérés au départ de la pile apparaitront dans le conteneur résultant dans... l'ordre inverse de celle dans lequel ils ont été créés à la base...

    Es tu sur que ce soit ce que tu souhaite
    A méditer: La solution la plus simple est toujours la moins compliquée
    Ce qui se conçoit bien s'énonce clairement, et les mots pour le dire vous viennent aisément. Nicolas Boileau
    Compiler Gcc sous windows avec MinGW
    Coder efficacement en C++ : dans les bacs le 17 février 2014
    mon tout nouveau blog

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Concaténation 2 vecteurs sans redondance
    Par FATENMRABET dans le forum Débuter avec Java
    Réponses: 61
    Dernier message: 31/10/2013, 21h42
  2. concaténation des vecteurs de tailles différentes
    Par loulitta dans le forum MATLAB
    Réponses: 16
    Dernier message: 15/01/2010, 12h26
  3. Concaténer des vecteurs lignes en une seule matrice
    Par ti_linoa dans le forum OpenCV
    Réponses: 3
    Dernier message: 23/06/2008, 17h09
  4. concaténer 2 vecteurs
    Par pelloq1 dans le forum Langage
    Réponses: 2
    Dernier message: 18/06/2008, 13h40
  5. Concaténation dans un vecteur
    Par nunurs83 dans le forum MATLAB
    Réponses: 10
    Dernier message: 15/02/2007, 23h03

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo