c++算法题:求二进制位中0的个数
作者:野牛程序员:2024-07-04 17:33:54 C++阅读 2423
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