数组中一个数出现一次,其余出现3次

class Solution {
public:
    int singleNumber(int A[], int n) { // 将每一位 进右用移动  相加
		int result=0;
		for(int i=0;i<32;++i){
			int bits=0;
			for(int j=0;j<n;++j){
				bits+=(A[j]>>i)&1;//依次获取元素的每一位,并将数组元素相同位相加 
			}
			result|=(bits%3)<<i;
		}
		return result;
    }
};

猜你喜欢

转载自blog.csdn.net/u010325193/article/details/85562870