二进制中1的个数

2018-09-19  本文已影响0人  小小的白菜

输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。

function NumberOf1(n) {
    // js中负数使用二进制补码的形式存储
    if(n < 0) {
      // 无符号右移将负数的二进制码当成正数的二进制码
      n = n >>> 0 // 得到负数的补码
    }
    const arr = n.toString(2).split('1')
    return arr.length-1
  }
上一篇下一篇

猜你喜欢

热点阅读