面试10:二进制中1的个数

题目:请实现一个函数,输入一个整数,输出该二进制表示中1的个数。例如把9表示成二进制是1001,有2位是1.因此如果输入9,该函数输出2.

解决思路:

把一个整数减去1之后再和原来的整数做位与运算,得到的结果相当于是把整数的二进制表示中的最后一个1变成0.

面试10:二进制中1的个数_第1张图片

你可能感兴趣的:(面试10:二进制中1的个数)