日复一日

厚积薄发|跳跃的人生

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
一个数组,下标从0到n,元素为从0到n的整数。判断其中是否有重复元素。

 1int hasDuplicate(int[] a, int n){
 2    for(int i=0;i<n;++i){
 3        while(a[i]!=&& a[i]!=-1){
 4            if(a[a[i]]==-1return 1;
 5            a[i]=a[a[i]];
 6            a[a[i]]=-1;
 7        }

 8        if(a[i]==i) {a[i]=-1;}
 9    }

10    return 0;
11}
posted on 2006-06-17 08:50  GwQ  阅读(746)  评论(1)    收藏  举报