思路一:用数组存储每个数字出现的次数,但题目只需要找到第一个不重复出现的数,故浪费空间,O(N^2)
思路二:双循环,找到第一个不重复,即返回,O(N^2)
代码1:
/**
* 找出数组中第一个不重复的数字,如果没有就返回null
*/
public class FirstDupNum {
@Test
public void start() {
int [] arr ={1,2,3,9,7,66,5,5,4,66,3,7,2,9,0,0,1,4};
System.out.println(handler(arr));
}
public Integer handler(int [] arr){
Integer position=null;
for (int i = 0; i < arr.length; i++) {
for (int j =0; j <arr.length ; j++) {
if(i!=j&&arr[i]==arr[j]){
position=j;
break;
}
if(j==arr.length-1){
position=arr.length;
}
}
if(position==arr.length){
return arr[i];
}
}
return null;
}
}
代码2:
/**
* 找出数组中第一个不重复的数字
*/
#de