二进制中1的个数

来源:互联网 发布:数学工具书 知乎 编辑:程序博客网 时间:2024/06/02 04:32

求二进制中1的个数


方法一:

      将 数字对2取余看余数是否为1.如果为1,说明这位为1.

方法二:

    使用位操作

     java代码如下,可直接运行

package every;import java.util.*;public class second {public static void main(String args[]){Scanner input = new Scanner(System.in);print("please input number");int num = input.nextInt();int result = 0;while(num!=0){result += num & 0x01;num = num >> 1;}print("the result is  " + result);}public static void print(String s){System.out.println(s);}}
方法三:

   来自编程之美,这种算法只和1的个数有关

  比如10这个数的二进制位1010,9的二进制位1001,这二个数&之后,得到的是什么?没错 是1000。然后1000&0111为0000,结束,总共有2个1.

0 0
原创粉丝点击