题目:
分析:
借助一个map,一个一维的。
代码:
map<int,int> m;
//arr2中存在的都设为1
for(int i=0;i<arr2.size();i++)
{
m[arr2[i]]=1;
}
vector<int> v;
for(int i=0;i<arr1.size();i++)
{
if(m[arr1[i]]==0)
{
v.push_back(arr1[i]);
continue;
}
m[arr1[i]]++;
}
sort(v.begin(),v.end());
vector<int> t;
for(int i=0;i<arr2.size();i++)
{
for(int j=1;j<m[arr2[i]];j++) t.push_back(arr2[i]);
}
for(int i=0;i<v.size();i++) t.push_back(v[i]);
return t;