求二进制数中1的个数

Posted 曹增令

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了求二进制数中1的个数相关的知识,希望对你有一定的参考价值。

  给定一个整数,输出这个整数二进制表示中的1的个数。例如,给定整数7,其中二进制表示为111,因此输出结果为3.

该问题可以采用位操作来执行完成。

  思路:首先,判断这个数的最后一位是否为1,如果为1 ,则计数器加 1,然后右移丢掉最后一位。循环执行该操作,直到这个数等于0

为止。

public class Test{
   public static int countOne(int n){
      int count=0;//用来计数
      while(n>0){
           if((n&1)==1)//判断最后一位是不是1
            count ++ ;
            n>>=1;     
       }
         return count;
    }   

     public static void main(String[] args){
      
        System.out.println(countOne(7)); 

}    



}    

  

  

以上是关于求二进制数中1的个数的主要内容,如果未能解决你的问题,请参考以下文章

位运算求二进制数中1的个数

求二进制数中1的个数

求二进制数中1的个数

近乎O求二进制数中1的个数

读书笔记一:求二进制数中1的个数

编程之美学习笔记2.1求二进制数中1的个数