【练习笔记】剑指offer-面试题10 :二进制中1的个数

来源:互联网 发布:java c 效率 编辑:程序博客网 时间:2024/06/05 20:51

【问题】

输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。

【答案】

public class Solution {    public int NumberOf1(int n) {int count =0;        int s = 1;                for(int i=0;i<32;i++){            if((n & s) != 0){                count++;            }           s= s<<1;        }        return count;    }}

public class Solution {    public int NumberOf1(int n) {       int count =0;        while(n!=0){           count++;        n=(n-1)&n;        }        return count;    }}


0 0
原创粉丝点击