数组a[N],存放了1至N-1个数,其中某个数重复一次。写一个函数,找出被重复的数字.时间复杂度必须为o(N)函数原型:

来源:互联网 发布:java入门看什么书 编辑:程序博客网 时间:2024/05/16 00:33

#include<iostream>
using namespace std;

void do_dump(int a[],int N)
{
    int *b=new int[N];
    for(int i=0;i!=N;++i)
        b[i]=0;
    for(int j=0;j!=N;++j)
    {
        if(b[a[j]]==0)
            b[a[j]]=a[j];
        else
            cout<<b[j]<<endl;
    }

     delete b;

}


int main()
{
    int a[5]={1,2,3,3,4};
    do_dump(a,5);
    return 0;
}

原创粉丝点击