English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

C++ Tutoriel de base

C++ Contrôle de flux

C++ Fonctions

C++ Tableaux & chaînes

C++ Structures de données

C++ Classes & objets

C++ Pointeurs

C++ Héritage

C++ Tutoriel STL

C++ Manuel de référence

C++ List merge() Utilisation et exemple

C++ List (liste)

C ++ La fonction List merge() fusionne deux listes triées en ordre croissant. Elle ajoutera la liste y à la conteneur de liste donnée, ce qui supprimera tous les éléments de y.

Deux cas peuvent se produire dans la fonction merge() merge() :

Si aucun comparateur n'est passé en paramètre, deux listes triées seront fusionnées en une liste.

Si un comparateur est passé en paramètre, la liste sera fusionnée en fonction de la comparaison interne.

语法

deux listes list1et list2。语法为:

list1.merge(list2);
list1.merge(list2,compare);

paramètres

list2:Pour lister1Liste fusionnée.

compare:C'est un objet de fonction de comparaison utilisé pour comparer la valeur du premier paramètre avec la valeur du second paramètre. Si la valeur du premier paramètre est inférieure à la valeur du second paramètre, renvoie true, sinon renvoie false.

Valeur de retour

Il ne renvoie aucune valeur.

Exemple1

Laissez-nous voir un exemple simple

#include <iostream>
#include<list>
using namespace std;
int main()
{
   list<int> li={1,2,3,4};
   list<int> li1={5,6,7,8};
   li.merge(li1);
   for(list<int>::iterator itr = li.begin(); itr != li.end();++itr){
       std::cout << *itr << " " << std::endl;  
   }   
   return 0;
}

Sortie :

1 2 3 4 5 6 7 8

Dans cet exemple, la fonction merge() ajoutera la liste li à la liste li1les ajouter à une liste.

Exemple2

Laissez-nous voir un exemple simple, lorsque le comparateur est passé en paramètre

#include <iostream>
#include<list>
using namespace std;
bool comparison(int first, int second)
{
    bool a;
    a = first < second;
    return (a);
}
int main()
{
  list<int> li={9,10,11};
  list<int> li1={5,6,7,15};
  li.merge(li1,comparison);
  for(list<int>::iterator itr = li.begin(); itr != li.end();++itr){
      std::cout << *itr << " " << std::endl;
  }  
  return 0;
}

Sortie :

5 6 7 9 10 11 15

Dans cet exemple, la fonction merge() combine les listes en fonction de la comparaison interne.

C++ List (liste)