剑指 Offer 15. 二进制中1的个数

111 阅读1分钟

剑指 Offer 15. 二进制中1的个数

编写一个函数,输入是一个无符号整数(以二进制串的形式),返回其二进制表达式中数字位数为 '1' 的个数(也被称为 汉明重量).)。

方法1

var hammingWeight = function(n) {
    n = ((n).toString(2))
    var c = 0;
    n.replace(/1/g,()=>{c++})
    return c
};

方法2

const hammingWeight = n => {
    let count = 0;
    while (n !== 0) {
        n = n & (n - 1);
        count++;
    }
    return count;
};