[Leetcode] Number of 1 Bits

来源:互联网 发布:桌面出现激活windows 编辑:程序博客网 时间:2024/06/16 12:45

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:

public class Solution {    // you need to treat n as an unsigned value    public int hammingWeight(int n) {      int sum=0;      for(int i=0;i<32;i++)      {         sum+=n%2;         n=n>>1;      }      if(sum>0) return sum;      else return (-sum);    }}

方法2:

public class Solution {    // you need to treat n as an unsigned value    public int hammingWeight(int n) {          return Integer.bitCount(n);    }}



0 0
原创粉丝点击