菜单 学习猿地 - LMONKEY

VIP

开通学习猿地VIP

尊享10项VIP特权 持续新增

知识通关挑战

打卡带练!告别无效练习

接私单赚外块

VIP优先接,累计金额超百万

学习猿地私房课免费学

大厂实战课仅对VIP开放

你的一对一导师

每月可免费咨询大牛30次

领取更多软件工程师实用特权

入驻
458
0

剑指Offer(Java版)第十三题:请实现一个函数,输入一个整数,输出该数二进制表示中1的个数。

原创
05/13 14:22
阅读数 49846

/*请实现一个函数,输入一个整数,输出该数二进制表示中1的个数。
* 例如把9表示成二进制是1001,有2位是1。因此如果输入9,该函数输出2。
*/
public class Class13 {
public int findNumOfOne(int a){
int count = 0;
while(a != 0){
count++;
a = (a-1) & a;
}
return count;
}
public void test1(){
int b = 9; // 1001
System.out.println(findNumOfOne(b));
}
public void test2(){
int b = 13; // 1101
System.out.println(findNumOfOne(b));
}

public static void main(String[] args) {
// TODO Auto-generated method stub
Class13 c = new Class13();
c.test1();
c.test2();
}

}

发表评论

0/200
458 点赞
0 评论
收藏
为你推荐 换一批