C++ algorithm merge() function
Example
Merge two vectors:
vector<int> numbers1 = {1, 4, 9, 16};
vector<int> numbers2 = {2, 4, 6, 8};
vector<int> merged(8);
merge(numbers1.begin(), numbers1.end(), numbers2.begin(), numbers2.end(), merged.begin());
for (int item : merged) {
cout << item << " ";
}
Try it Yourself »
Definition and Usage
The merge()
function copies the values from two data ranges into a different data range.
The destination data range should be large enough to contain all of the elements of the other two data ranges.
If the two data ranges are sorted then the destination data range will also be sorted.
The data ranges are specified by iterators.
Syntax
merge(iterator start1, iterator end1, iterator start2, iterator end2, iterator destination);
Parameter Values
Parameter | Description |
---|---|
start1 | Required. An iterator pointing to the start of the first data range. |
end1 | Required. An iterator pointing to the end of the first data range. Elements up to this position will be included, but the element at this position will not be. |
start2 | Required. An iterator pointing to the start of the second data range. |
end2 | Required. An iterator pointing to the end of the second data range. Elements up to this position will be included, but the element at this position will not be. |
destination | Required. An iterator pointing to the data range where the merged data will be written. |
Technical Details
Returns: | An iterator pointing to the end of the merged data. This is the position right after the last element in the data range. |
---|
Related Pages
Read more about data structures in our Data Structures Tutorial.
Read more about iterators in our Iterators Tutorial.
Read more about algorithms in our Algorithms Tutorial.