在现代C++中,merge这个函数可以用于合并两个已经排序的序列,包括vector、deque以及其他STL容器。merge函数是在
std::vector<int> vec1 = {1, 3, 5};
std::vector<int> vec2 = {2, 4, 6};
std::vector<int> result;
std::merge(vec1.begin(), vec1.end(), vec2.begin(), vec2.end(), std::back_inserter(result));
for (int num : result) {
std::cout << num << " ";
}
上面的代码将两个已经排序的vector合并到一个新的vector中,并输出合并后的结果。在这个例子中,merge函数接受四个参数:两个要合并的序列的起始和终止迭代器,以及一个用于插入合并结果的迭代器(这里使用了std::back_inserter函数,将结果插入到result的末尾)。
merge函数会按照升序排列合并两个序列,并将结果存储在指定的目标序列中。需要注意的是,merge函数要求被合并的序列已经按照升序排列,否则结果可能无法正确合并。