剑指offer编程题Java实现——面试题10二进制中1的个数
来源:互联网 发布:优酷网络电影合作 编辑:程序博客网 时间:2024/05/22 00:27
题目:
请实现一个函数,输入一个整数,输出该整数二进制表示中1的个数。例如,把9表示成二进制是1001,有2位是1,该函数输出2
解法:把整数减一和原来的数做与运算,会把该整数二进制表示中的最低位的1变成0,与运算进行多少次就有多少个1。
1 package Solution; 2 /** 3 * 剑指offer面试题10:二进制中1的个数 4 * 题目:请实现一个函数,输入一个整数,输出该整数二进制表示中1的个数。 5 * 例如,把9表示成二进制是1001,有2位是1,该函数输出2 6 * 解法:把整数减一和原来的数做与运算,会把该整数二进制表示中的最低位的1变成0,与运算进行多少次就有多少个1 7 * @author GL 8 * 9 */10 public class No10BitOperation {11 12 public static void main(String[] args) {13 int number1=11;14 System.out.println("整数11的二进制中1的个数为:"+numberOfOne(number1));15 //Java中的int类型整数由4字节32位组成16 int number2=-11;17 System.out.println("整数11的二进制中1的个数为:"+numberOfOne(number2));18 19 20 }21 public static int numberOfOne(int number){22 int count=0;23 24 while(number!=0){25 count++;26 number=number&(number-1);27 }28 return count;29 }30 31 }
0 0
- 剑指offer编程题Java实现——面试题10二进制中1的个数
- 剑指offer--面试题10:二进制中1的个数--Java实现
- 剑指offer面试题10 二进制中1的个数 java实现
- [剑指offer][面试题10]二进制中1的个数
- 《剑指offer》面试题10二进制中1的个数
- 【剑指offer】面试题10:二进制中1的个数
- 【剑指offer】面试题10:二进制中1的个数
- 剑指offer 面试题10 二进制中1的个数
- 剑指Offer:面试题10 二进制中1的个数
- 《剑指Offer》面试题10:二进制中1的个数
- 剑指offer-面试题10-二进制中1的个数
- 【剑指offer】 面试题10: 二进制中1的个数
- 剑指offer-面试题10:二进制中1的个数
- 剑指Offer----面试题10:二进制中1的个数
- 【剑指offer】面试题10: 二进制中1的个数
- 剑指offer面试题10:二进制中1的个数
- 剑指offer--面试题10:二进制中1的个数
- 剑指offer-面试题10-二进制中1的个数
- hdu 4280 Island Transport
- Redis使用认证密码登录
- uva 12549 Sentry Robots 最大二分匹配
- java
- HBase运行中抛出异常org.apache.hadoop.hbase.client.ScannerTimeoutException
- 剑指offer编程题Java实现——面试题10二进制中1的个数
- hello
- 蓝桥 实力二分
- origin斑图
- 第一次使用studio设置以及常用插件
- 欢迎使用CSDN-markdown编辑器
- tensorflow debug
- 二分贪心练习--T(用最少的箱子放所有的货物)
- c++ 链接mysql:error LNK2019: 无法解析的外部符号