Find The Parity Outlier
Description:
You are given an array (which will have a length of at least 3, but could be very large) containing integers. The array is either entirely comprised of odd integers or entirely comprised of even integers except for a single integer N. Write a method that takes the array as an argument and returns N.
For example:
[2, 4, 0, 100, 4, 11, 2602, 36]
Should return: 11
[160, 3, 1719, 19, 11, 13, -21]
Should return: 160
function findOutlier(integers){
//your code here
var hash_flag =[1,1,1,0,1,0,0,0];
for(var i=0;i<integers.length;i++)
{
if((integers[i]&1) == hash_flag[(integers[0]&1)*4+(integers[1]&1)*2+(integers[2]&1)*1])
return integers[i];
}
}
高票答案:
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];
}
本文介绍了一个名为FindTheParityOutlier的问题,该问题旨在从一个几乎全为偶数或奇数的整数数组中找出唯一的不同数。提供了一种高效的方法来解决这个问题,并给出了具体的示例。
361

被折叠的 条评论
为什么被折叠?



