public class Solution {
public int[] singleNumber(int[] nums) {
if (nums == null || nums.length < 2) return null;
int xor = 0;
for (int num : nums) {
xor ^= num;
}
int[] rst = new int[] {0, 0};
xor &= -xor;
for (int num : nums) {
if ((xor & num) == 0) {
rst[0] ^= num;
} else {
rst[1] ^= num;
}
}
return rst;
}
}