//计算二进制数中的位为0的个数 int CountZeroBit(int x) { int count = 0; while(x+1) { count++; x |= (x+1); } return count; } //计算二进制数中位为1的位数 int coutOneBit(int x) { int count = 0; while(x) { count++; x &= (x-1); } return count; }
//计算二进制数中的位为0的个数 int CountZeroBit(int x) { int count = 0; while(x+1) { count++; x |= (x+1); } return count; } //计算二进制数中位为1的位数 int coutOneBit(int x) { int count = 0; while(x) { count++; x &= (x-1); } return count; }