Test name | Executions per second |
---|---|
looping | 4339432.5 Ops/sec |
filtering | 9.9 Ops/sec |
var arr = new Array(1000000);
arr.fill(10);
arr[5] = 1
function findOutlier(integers){
//your code here
var test;
let i = 0;
let len = integers.length;
if ((integers[0] % 2 == 0 || integers[1] % 2 == 0) && (integers[2] % 2 == 0 || integers[3] % 2 == 0)) {
// outlier is odd
test = function(int) {
return int % 2 !== 0;
}
} else {
// outlier is even
test = function(int) {
return int % 2 === 0;
}
}
for(i;i < len;i++) {
if (test(integers[i])) {
return integers[i]
}
}
}
findOutlier(arr);
function findOutlier(int){
var even = int.filter(a=>a%2==0);
var odd = int.filter(a=>a%2!==0);
return even.length==1? even[0] : odd[0];
}
findOutlier(arr)