Demonstrating the generic merge algorithm with an array, a list, and a deque : merge « STL Algorithms Merge « C++ Tutorial






#include <iostream>
#include <cassert>
#include <list>
#include <deque>
#include <algorithm>  // For merge
using namespace std;

int main()
{
  char s[] = "aeiou";
  int len = strlen(s);
  list<char> list1(&s[0], &s[strlen(s)]);

  // Initialize deque1 with 26 copies of the letter x:
  deque<char> deque1(26, 'x');

  // Merge array s and list1, putting result in deque1:
  merge(&s[0], &s[len], list1.begin(), list1.end(),deque1.begin());

  deque<char>::iterator i;

  cout.precision(10);

  for (i = deque1.begin(); i != deque1.end(); ++i)
    cout << *i << endl;

  return 0;
}
a
a
e
e
i
i
o
o
u
u
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x








28.3.merge
28.3.1.Use std::merge to merge elements in two elements into the third one in sorted order
28.3.2.Use merge with back_inserter
28.3.3.Merge two containers
28.3.4.sum the ranges by using merge()
28.3.5.Demonstrating the generic merge algorithm with an array, a list, and a deque
28.3.6.Generic merge algorithm: merge parts of an array and a deque, putting the result into a list