您的位置:首页 > 其它

华为机试—元素异同比较

2014-12-30 10:40 218 查看
输入两个整形数组,找出这两个数组中对应位置不相等的个数。

#include <iostream>  
    using namespace std;  
      
    int diff_num(int arr1[],int len1,int arr2[],int len2)  
    {  
        int num=0;  
        int i=len1-1;  
        int j=len2-1;  
        int k=(len1<len2)?len1:len2;  
        k--;  
        while(k>=0)  
        {  
            if(arr1[i]!=arr2[j])  
            {  
                num++;  
                i--;  
                j--;  
                k--;  
            }  
            else  
            {  
                i--;  
                j--;  
                k--;  
            }  
        }  
        return num;  
    }  
      
      
    int main()  
    {  
        int arr1[100];  
        int arr2[100];  
        int a,k=0,b,l=0;  
      
        cin>>a;  
        while(getchar()!='\n')  
        {  
            arr1[k++]=a;  
            cin>>a;  
        }  
        arr1[k++]=a;  
      
        cin>>b;  
        while(getchar()!='\n')  
        {  
            arr2[l++]=b;  
            cin>>b;  
        }  
        arr2[l++]=b;  
      
        cout<<diff_num(arr1,k,arr2,l)<<endl;  
        return 0;  
    }


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: