Implemente una función, ingrese un número entero (en forma de cadena binaria) y genere el número de 1 en la representación binaria del número. Por ejemplo, si 9 se expresa en binario, es 1001 y 2 bits son 1. Por lo tanto, si ingresa 9, la función genera 2.
Ejemplo 1:
Entrada: 00000000000000000000000000001011
Salida: 3
Explicación: En la cadena binaria de entrada 00000000000000000000000000001011, un total de tres bits son '1'.
Ejemplo 2:
Entrada: 00000000000000000000000010000000
Salida: 1
Explicación: En la cadena binaria de entrada 00000000000000000000000010000000, un total de un bit es '1'.
Ejemplo 3:
Entrada: 11111111111111111111111111111101
Salida: 31
Explicación: En la cadena binaria de entrada 11111111111111111111111111111101, un total de 31 bits son '1'.
Resolución de problemas:
public class Solution {
// you need to treat n as an unsigned value
public int hammingWeight(int n) {
int res=0;
while(n!=0){
res+=1&n;
n= n>>>1;
}
return res;
}
}