题目
输入一个整数,输出该数二进制表示中1的个数。
例如:输入10,它的二进制表示是1010,那么1的个数为2
code
// 二进制中1的个数
// 例如:10 --> 1010 --> 个数为:2
// 妙解:1、1010 - 1 --> 1001
// 2、1001 & 1010 --> 1000
// -------------------------------------
// 3、1000 - 1 --> 0111
// 4、0111 & 1000 --> 0000
// -------------------------------------
// 得出次数:2
function numberOf1(num) {
let count = 0
while (num) {
num = (num - 1) & num
count++
}
return count
}
网友评论