假如你現在被一羣美女包圍了,你的兄弟要把你找出來,結果會怎麼樣?(會不會被打死)
現在給你一個數字數組,其中會有一個數字與其他所有的數字都不一樣,請把它找出來!
例如:
findUniq([ 1, 1, 1, 2, 1, 1 ]) === 2
findUniq([ 0, 0, 0.55, 0, 0 ]) === 0.55
注意:數組中的數字會大於等於3個。在測試用例中會有非常龐大的數組,所以要考慮一下性能哦!
public class Demo {
public static double findUniq(double arr[]) {
// 7 1 1 1 1 1
// 1 7 1 1 1 1
// 1 1 1 1 1 7
for(int i=0;i<arr.length;i++){
if(i==0){
if(arr[0]!=arr[1] && arr[0]!=arr[2]){
return arr[0];
}
}else if(i==arr.length-1){
if(arr[i]!=arr[i-1] && arr[i]!=arr[i-2]){
return arr[i];
}
}else{
if(arr[i]!=arr[i-1] && arr[i]!=arr[i+1]){
return arr[i];
}
}
}
return 0;
}
public static void main(String[] args) {
double d = Demo.findUniq(new double[]{0, 1, 0});
System.out.println(d);
}
}