美文网首页
6.二进制中1的个数

6.二进制中1的个数

作者: percykuang | 来源:发表于2019-10-17 23:22 被阅读0次

    题目

    输入一个整数,输出该数二进制表示中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
    }
    

    相关文章

      网友评论

          本文标题:6.二进制中1的个数

          本文链接:https://www.haomeiwen.com/subject/fgsbmctx.html