merge

The function merge is used to combine two sorted ranges.

  template<class InputIterator1, 
  class InputIterator2, class OutputIterator>
  OutputIterator merge
  (InputIterator1 first1, InputIterator1 last1,
  InputIterator2 first2, InputIterator2 last2,
  OutputIterator result);
  template<class InputIterator1, class InputIterator2,
  class OutputIterator, class Compare>
  OutputIterator merge
  (InputIterator1 first1, InputIterator1 last1,
  InputIterator2 first2, InputIterator2 last2,
  OutputIterator result, Compare comp);
  
Return

The position of the first element not overwritten is returned.