算法1
(暴力枚举) $O(nlogn)$
统计每一位1的个数,对3求余,余1的话表示当前位为1,余0的话表示当前位为0
时间复杂度
参考文献
java 代码
class Solution {
public int findNumberAppearingOnce(int[] nums) {
int ans = 0;
for(int i =30;i>=0;i--)//统计每一位的个数
{
int cout = 0;
for(int num:nums)//统计每个数的这个位置的1的个数
{
cout=cout+(num>>i&1);//加减操作的优先级高于左移和右移
}
if(cout%3==1) ans+=1<<i;
}
return ans;
}
}