Merge two lists : list merge « list « C++ Tutorial






#include <iostream>
#include <list>
using namespace std;

int main()
{
  list<int> lst1, lst2;
  int i;

  for(i=0; i<10; i+=2) lst1.push_back(i);
  for(i=1; i<11; i+=2) lst2.push_back(i);

  cout << "Contents of lst1:\n";
  list<int>::iterator p = lst1.begin();
  while(p != lst1.end()) {
    cout << *p << " ";
    p++;
  }
  cout << endl << endl;

  cout << "Contents of lst2:\n";
  p = lst2.begin();
  while(p != lst2.end()) {
    cout << *p << " ";
    p++;
  }
  cout << endl << endl;

  lst1.merge(lst2);
  if(lst2.empty())
    cout << "lst2 is now empty\n";

  cout << "Contents of lst1 after merge:\n";
  p = lst1.begin();
  while(p != lst1.end()) {
    cout << *p << " ";
    p++;
  }

  return 0;
}
Contents of lst1:
0 2 4 6 8

Contents of lst2:
1 3 5 7 9

lst2 is now empty
Contents of lst1 after merge:
0 1 2 3 4 5 6 7 8 9








17.10.list merge
17.10.1.Merge one list with another list
17.10.2.merge list with user-defined objects with greater
17.10.3.Merge two lists