package com.heyang;

 public class CompletedBitmapMethod {
 public static void main(String[] args) {
 int[] arr= {1,7,3,6,9,-1};
System.out.println(hasDuplicatedItem(arr));
}
 public static boolean hasDuplicatedItem(int[] arr) {
// 找出數組中最大值
int max=arr[0];
int min=max;
 for(int i:arr) {
 if(max<i) {
max=i;
}
 if(min>i) {
min=i;
}
}
int[] newArr=new int[max-min+1];
 for(int i:arr) {
int index=i-min;
 if(newArr[index]==0) {
// 以前未在此位置存值
newArr[index]=1;
}
 else {
// 以前已經在此位置存值
return true;
}
}
return false;
}
}
|