代码如下,请各位大神指教:
#include
#include
#include
using namespace std;
class Solution {
public:
/**
* @param nums1 an integer array
* @param nums2 an integer array
* @return an integer array
*/
vector
intersection(vector
& nums1, vector
& nums2) { // Write your code here sort(nums1.begin(),nums1.end()); sort(nums2.begin(),nums2.end());//对两个数组进行排序 vector
output; int len1=nums1.size(); int len2=nums2.size(); int i,j;//设置参数 for(i=0;i
nums2[j]) j++;//如果第二组数组元素小于第二组元素时,将第二个数组的元素加一 else if(nums1[i]==nums2[j]) { output.push_back(nums1[i]); i++; j++;//如果第一组数组元素等于第二组元素时,分别将两个数组各自的元素加一 } } return output; } }; void main() { Solution test; vector
nums1; vector
nums2; vector
output; int c1,c2; cout<<"请输入第一串整数数组,彼此间用空格分开"<
>c1) { nums1.push_back(c1); if(cin.get()=='\n') break; } cout<<"请输入第二串整数数组,彼此间用空格分开"<
>c2) { nums2.push_back(c2); if(cin.get()=='\n') break; } output=test.intersection(nums1,nums2); vector
::iterator it; cout<<"数组的交集如下显示:"<