c++将两个vector容器的数据合并
时间: 2023-09-12 08:06:38 浏览: 310
可以使用STL库中的`std::merge()`函数,该函数可以将两个已排序的容器合并为一个新的已排序的容器。
以下是一个示例代码:
```c++
#include <iostream>
#include <vector>
#include <algorithm>
int main() {
std::vector<int> vec1 = {1, 3, 5, 7, 9};
std::vector<int> vec2 = {2, 4, 6, 8, 10};
std::vector<int> merged(vec1.size() + vec2.size());
std::merge(vec1.begin(), vec1.end(), vec2.begin(), vec2.end(), merged.begin());
for (const auto& element : merged) {
std::cout << element << " ";
}
std::cout << std::endl;
return 0;
}
```
输出结果为:
```
1 2 3 4 5 6 7 8 9 10
```
在上述代码中,先定义了两个已排序的 `vector` 容器 `vec1` 和 `vec2`,然后定义了一个新的 `vector` 容器 `merged`,大小为两个容器的大小之和。
接下来,使用 `std::merge()` 将 `vec1` 和 `vec2` 合并到 `merged` 中。最后,使用 `for` 循环遍历 `merged` 容器,输出其中的元素。
阅读全文