剑指offer:二进制中1的个数
一、题目描述
输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。
二、思路
将整数转为二进制字符串,然后依次遍历字符串中的每个字符计算‘1’的个数。
//将整数n转换为对应二进制数的字符串 Integer.toBinaryString(n)
public class Solution {
public int NumberOf1(int n) {
int res = 0;
if(n==0){
return res;
}
String num = Integer.toBinaryString(n);
System.out.println(num);
for(int i=0;i<num.length();i++){
if(num.charAt(i)=='1'){
res++;
}
}
return res;
}
}

浙公网安备 33010602011771号