思路:位运算
class Solution {
public:
int singleNumber(vector<int>& nums) {
int res = 0;
for(int i = 0; i < 32; i++)
{
int count = 0; //用于统计i位上1的个数
int m = 1<<i;
//统计数组中各个数i位上1的个数
for(int j = 0; j < nums.size(); j++)
{
if(nums[j]&m) count++;
}
if(count%3) res |= m;
}
return res;
}
};