只出现一次的数字2
public int singleNumber(int[] nums) {
int ret = 0;
for (int i = 0; i < 32; i++) // 依次修改 ret 中的每⼀个⽐特位
{
int sum = 0;
for (int x : nums) // 统计 nums 中所有的数的第 i 位的和
if (((x >> i) & 1) == 1)
sum++;
if (sum%3 == 1)
ret |= 1 << i;
}
return ret;
}