最近工作中用到了unordered_map的合并,现在把c++中两个常用容器vector和map的合并方法总结一下。
一、vector的合并
(1)insert()方法
#include <iostream>
#include <vector>
using namespace std;
int main() {
vector<int> v1;
vector<int> v2;
for (int i = 0; i < 5; i++) {
v1.push_back(i); //v1的元素:0,1,2,3,4
v2.push_back(i + 2); //v2的元素:2,3,4,5,6
}
vector<int> v3;
v3.insert(v3.end(), v1.begin(), v1.end());//将v1压入
v3.insert(v3.end(), v2.begin(), v2.end());//继续将v2压入
for (int i = 0; i < v3.size(); i++) {
cout << v3[i] << endl;//输出0,1,2,3,4,2,3,4,5,6
}
}
(2)merge()方法:merge() 函数用于将 2 个有序序列合并为 1 个有序序列,前提是这 2 个有序序列的排序规则相同(要么都是升序,要么都是降序)。
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int mai