[La espada se refiere a la oferta] El número de unos en un número binario (aritmética de bits para resolver problemas)

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;
}
}

 

Supongo que te gusta

Origin blog.csdn.net/qq_44624536/article/details/114298083
Recomendado
Clasificación