我想为这个问题实施 Method2 http://www.geeksforgeeks.org/find-two-non-repeating-elements-in-an-array-of-repeating-elements/但我有一个问题。我不知道如何将数组中的数字分成两组(一组在其二进制表示中的指定位置有'1',而那些没有)我认为我必须使用Integer.toBinaryString()
数组中的每个数字以下方法:
private static boolean hasOne(int number, int i) {
String s = Integer.toBinaryString(number);
if(s.charAt(i) == '1')
return true;
return false;
}
但问题是,并非每个数字在其二进制表示中都具有相同的长度,并且该方法无法正常工作。我该如何处理?即我该如何处理填充?