lintcode求两个数组的交出错

代码如下,请各位大神指教:
#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;inums2[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<<"数组的交集如下显示:"<

你可能感兴趣的:(lintcode,lintcode)