C++ algorithm 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 | 必需。指向要写入合并数据的数据范围的迭代器。 |
技术细节
| 返回值: | 指向合并数据末尾的迭代器。这是数据范围内最后一个元素之后的位置。 |
|---|
相关页面
阅读更多关于数据结构的内容,请参阅我们的数据结构教程。
阅读更多关于迭代器的内容,请参阅我们的迭代器教程。
阅读更多关于算法的内容,请参阅我们的算法教程。

