您的位置:首页 > 其它

算法(输出一个数组中的重复数,(并非全部重复数))

2018-01-04 22:48 274 查看
数组长度为n+1,元素范围1-n,输出一个重复的数。

public class TheSameNumber1 {
private int theSameNumber(int[] a) {
int b[]=new int[a.length];
for (int index=0;index<a.length;index++) {
b[index]=0;
}
int i,n;
i=0;
n=a.length;
while (i<n){
if(a[i]!=i){
int j=a[i];
if(b[j]==0)
b[j]=a[i];
else
return b[j];
i++;
}
else{
i++;
}
}
return -1;
}
public static void main(String []args){
int []a={3,2,1,1,4};
TheSameNumber1 n=new TheSameNumber1();
int k=n.theSameNumber(a);
if(k>-1) {
System.out.println("重复数字为:"+k);
}else
System.out.println("无重复数字!");
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐