交集、并集:set_intersection()、set_union())
1.交集(求两个数组共同有的元素
)
#include <bits/stdc++.h>
using namespace std;const int N = 11111;int x[N],y[N];int n;vector<int> vt;int main()
{cin>>n;for(int i=0;i<n;i++) cin>>x[i];for(int i=0;i<n;i++) cin>>y[i];set_intersection(x,x+n,y,y+n,inserter(vt,vt.begin()));for(int i=0;i<vt.size();i++) cout<<vt[i]<<" ";return 0;
}
运行结果:
2.并集
#include <bits/stdc++.h>
using namespace std;const int N = 11111;int x[N],y[N];int n;vector<int> vt;int main()
{cin>>n;for(int i=0;i<n;i++) cin>>x[i];for(int i=0;i<n;i++) cin>>y[i];set_union(x,x+n,y,y+n,inserter(vt,vt.begin()));for(auto it:vt){cout<<it<<" ";} return 0;
}
运行结果: