美文网首页
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