leetcode中一个题目,让统计二进制中1的个数。
首先第一个想法便是用位运算一位一位的去判断,这样便可以了,但是题目却有个要求复杂度小于 O(n*sizeof(integer))

这样便无法按着integer的size去逐个计算。

while(n){
   count++;
   n&=(n-1);   
}

n&(n-1)每次计算都会将最末尾的1去掉这样就可以更快的计算出二进制1的个数。

相关文章:

  • 2022-12-23
  • 2021-11-03
  • 2022-03-15
  • 2022-02-01
  • 2022-12-23
  • 2021-11-01
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2021-09-02
  • 2021-09-19
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-05-29
相关资源
相似解决方案