C++ 算法 merge() 函数
示例
合并两个向量
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 << " ";
}
自己动手试一试 »
定义和用法
merge()
函数将两个数据范围的值复制到另一个数据范围。
目标数据范围应该足够大,能够包含其他两个数据范围的所有元素。
如果两个数据范围是已排序的,那么目标数据范围也将是已排序的。
数据范围通过迭代器指定。
语法
merge(iterator start1, iterator end1, iterator start2, iterator end2, iterator destination);
参数值
参数 | 描述 |
---|---|
start1 | 必需。指向第一个数据范围起点的迭代器。 |
end1 | 必需。指向第一个数据范围终点的迭代器。此位置之前的元素将被包含,但此位置的元素将不被包含。 |
start2 | 必需。指向第二个数据范围起点的迭代器。 |
end2 | 必需。指向第二个数据范围末尾的迭代器。将包含此位置之前的元素,但不包含此位置的元素。 |
destination | 必需。指向要写入合并数据的范围的迭代器。 |
技术详情
返回 | 指向合并数据末尾的迭代器。这是范围中最后一个元素之后的位置。 |
---|
相关页面
在我们 数据结构教程 中了解更多关于数据结构的信息。
在我们 迭代器教程 中了解更多关于迭代器的信息。
在我们 算法教程 中了解更多关于算法的信息。