欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Number of 1 Bits

程序员文章站 2022-05-02 19:09:27
...
Write a function that takes an unsigned integer and returns the number of ’1' bits it has (also known as the Hamming weight).

For example, the 32-bit integer ’11' has binary representation 00000000000000000000000000001011, so the function should return 3.

计算一个整数中1的个数。通过位运算,每次右移一位,判断是否为1,如果为1计数器加1,代码如下:
public class Solution {
    // you need to treat n as an unsigned value
    public int hammingWeight(int n) {
        int count = 0;
        for(int i = 0; i < 32; i++) {
            count += (n >> i & 1);
        }
        return count;
    }
}
相关标签: 位运算