c++算法题:求二进制位中0的个数
作者:野牛程序员:2024-07-04 17:33:54 C++阅读 2917
c++算法题:求二进制位中0的个数
要计算一个整数在其二进制表示中0的个数,可以使用以下步骤:
将整数转换为二进制字符串。
统计二进制字符串中0的个数。
以下是一个C++实现:
#include <iostream>
#include <bitset>
int countZeroBits(int num) {
std::bitset<32> binary(num); // 假设是32位整数
int count = 0;
for (int i = 0; i < 32; ++i) {
if (!binary[i]) {
++count;
}
}
return count;
}
int main() {
int number = 13; // 示例数值
std::cout << "二进制位中0的个数: " << countZeroBits(number) << std::endl;
return 0;
}以上代码中,std::bitset用于将整数转换为二进制形式,然后通过遍历每一位来统计0的个数。
野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892

